npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@molecule/app-locales-ide

v1.3.1

Published

<!-- AUTO-GENERATED — DO NOT EDIT THIS FILE. Generated by `mlcl sync-docs` from the package's src/index.ts JSDoc + mlcl/registry.json. Edits here are overwritten on the next commit (molecule's pre-commit hook regenerates). To change this document, edit th

Readme

@molecule/app-locales-ide

Auto-generated, AI-first package reference for the molecule.dev ecosystem. It is written to be read by coding agents as much as by people, and is generated from this package's source — edit src/index.ts JSDoc, not this file.

Translations for molecule IDE components in 79 languages

Purpose

Provides translations for the @molecule/app-ide package which has 531 translation keys.

Languages

79 languages supported: af, am, ar, az, be, bg, bn, bs, ca, cs, cy, da, de, el, en, es, et, eu, fa, fi, fil, fr, ga, gl, gu, ha, he, hi, hr, hu, hy, id, ig, is, it, ja, ka, kk, km, kn, ko, ky, lo, lt, lv, mk, ml, mn, mr, ms, mt, my, nb, ne, nl, pa, pl, pt, ro, ru, si, sk, sl, sq, sr, sv, sw, ta, te, th, tr, uk, ur, uz, vi, yo, zh, zh-TW, zu.

Quick Start

import { af, am, ar } from '@molecule/app-locales-ide'
import type { IdeTranslationKey, IdeTranslations } from '@molecule/app-locales-ide'

Registration

In an mlcl-scaffolded app, installed locale bonds are registered automatically by the app's i18n setup at startup — installing this package is normally all you need. To register manually (or in a custom app), pass the whole module to registerLocaleModule from @molecule/app-i18n at startup:

import { registerLocaleModule } from '@molecule/app-i18n'
import * as locales from '@molecule/app-locales-ide'

registerLocaleModule(locales)

Editing translations

en.ts is the canonical key set — every other language file mirrors its keys. To change or add strings, edit the locale files in this package (add new keys to en.ts first) or merge overrides at runtime with addTranslations(locale, map). Never hand-write translations inline in feature code: features call t(key, values, { defaultValue }) and THIS bond supplies the translations — inline strings bypass every other language.

Translation Keys

| Key | English | | --------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | ide.chat.model.region.us | US | | ide.chat.model.region.cn | CN | | ide.chat.model.regionHint | Processed in: {{region}} — click to change | | ide.chat.model.regionOnlyHint | Only hosted in: {{region}} | | ide.chat.model.regionMenuLabel | Processing region | | ide.chat.models.colRegion | Region | | ide.chat.thoughtBriefly | Thought briefly | | ide.chat.thoughtForSecond | Thought for 1 second | | ide.chat.thoughtForSeconds | Thought for {{count}} seconds | | ide.chat.thoughtForMinute | Thought for 1 minute | | ide.chat.thoughtForMinutes | Thought for {{count}} minutes | | ide.chat.streaming.thinking | Synthesizing... | | ide.chat.streaming.analyzing | Analyzing the structure... | | ide.chat.streaming.reasoning | Tracing the pathway... | | ide.chat.streaming.crafting | Composing the response... | | ide.chat.streaming.working | Reacting to your request... | | ide.chat.streaming.processing | Catalyzing... | | ide.chat.streaming.connecting | Bonding the concepts... | | ide.chat.streaming.almostThere | Crystallizing the answer... | | ide.chat.thinking | Thinking | | ide.chat.verificationPassed | Checks passed | | ide.chat.typeErrorCount | 1 type error | | ide.chat.lintErrorCount | 1 lint error | | ide.chat.lintWarningCount | 1 warning | | ide.chat.runtimeErrors | Runtime errors | | ide.chat.verificationFailed | Errors found | | ide.chat.viewPlans | View plans | | ide.chat.committing | Committing... | | ide.chat.commitLabel | Commit | | ide.chat.redoCommit | Re-apply this commit | | ide.chat.revertCommit | Revert this commit | | ide.chat.fileCount | {{count}} files | | common.cancel | Cancel | | common.save | Save | | ide.chat.queued | Queued | | ide.chat.queuedCount | {{count}} queued | | ide.chat.editQueued | Edit | | ide.chat.deleteQueued | Delete | | ide.chat.sendQueued | Send | | ide.chat.responseStopped | Response stopped | | ide.chat.changeModel | Change model | | ide.chat.increaseLoops | Increase max loops | | ide.chat.continueButton | Continue | | ide.chat.continuePrompt | Continue implementing from where you left off. | | upgrade.viewPlans | Upgrade | | guest.reminder.message | Sign up or log in to keep your work \\u2014 guest sessions expire after 72 hours. | | upgrade.signUp | Sign up | | guest.reminder.logIn | Log in | | ide.chat.soundsError | Failed to update sound settings. | | ide.chat.commitFailed | Commit failed | | ide.chat.fileTooLarge | File is too large. Maximum size is {{maxSize}}MB. | | ide.chat.modelSet | Chat model set to {{name}} | | ide.chat.compacting | Compacting conversation... | | ide.chat.compacted | Context usage is low — no compaction needed. | | ide.chat.compactError | Failed to compact conversation. | | ide.chat.switchedToPlan | Switched to plan mode | | ide.chat.switchedToExecute | Switched to execute mode | | ide.chat.fastModeOn | Fast mode on — faster responses at a higher rate | | ide.chat.fastModeOff | Fast mode off | | ide.chat.fastModeEnable | Fast mode — up to 2.5× faster output at a higher token rate | | ide.chat.fastModeDisable | Turn off fast mode | | ide.chat.costError | Unable to fetch usage data. | | ide.chat.usageAllowanceTodayLine | You | | ide.chat.usageAllowanceUsedUpLine | Today | | ide.chat.resetSoon | soon | | ide.chat.resetUnderHour | in under an hour | | ide.chat.resetTomorrow | tomorrow | | ide.chat.resetInHours | in about {{hours}} hours | | ide.chat.models.colUsageRate | Usage rate | | ide.chat.models.usageRateHint | How fast this model uses your AI allowance, relative to the most economical model | | ide.chat.models.usageRateValue | ×{{rate}} usage | | ide.chat.models.usageRateYourKey | your key | | ide.chat.models.usageRateYourKeyHint | Billed to your own provider key, not your plan. | | ide.chat.models.peakNow | peak ×{{multiplier}} now | | ide.chat.models.peakLater | ×{{multiplier}} at peak hours | | ide.chat.models.peakHint | This model costs ×{{multiplier}} between {{windows}}. It is the normal rate the rest of the day. | | ide.chat.undoNoChanges | No file changes to undo. | | ide.chat.undoComplete | Failed to revert changes. | | ide.chat.commitNoChanges | No changes to commit. | | ide.chat.commitError | Failed to commit changes. | | ide.chat.autoFixEnabled | Auto-fix enabled. | | ide.chat.autoFixDisabled | Auto-fix disabled. | | ide.chat.autoFixError | Failed to update auto-fix setting. | | ide.chat.autoApproveEnabled | Auto-approve on — destructive commands run without asking. The exfiltration guard still asks. Turn off with /autoapprove. | | ide.chat.autoApproveDisabled | Auto-approve off — destructive commands ask before running. | | ide.chat.autoApproveError | Failed to update auto-approve setting. | | ide.chat.modelUsage | Usage: /model (e.g. claude-opus-4-6, claude-sonnet-4-6, claude-haiku-4-5-20251001) | | ide.chat.modelUpgradeRequired | {{model}} is available on Pro. Upgrade to access all models. | | ide.chat.maxLoopsReached | Max loops limit reached. | | ide.chat.maxLoopsError | Failed to update max tool iterations. | | ide.chat.dropFilesHere | Drop files here | | ide.chat.showEarlier | Show earlier messages | | ide.chat.autoFixPaused | Auto-fix paused | | ide.chat.autoFixCountdown | Resume | | ide.chat.autoFixPause | Pause | | ide.chat.autoFixCancel | Cancel | | ide.chat.closeOverlay | Close | | ide.chat.retryCountdown | Server error — retrying in {{seconds}}s… (attempt {{attempt}}) | | ide.chat.version | {{productName}} v0.1.0 | | ide.chat.selectModel | Select model | | ide.chat.currentBadge | current | | ide.chat.proRequired | Pro | | ide.chat.notificationSounds | Notification sounds | | ide.chat.soundMode.mixed | mixed | | ide.chat.soundAll | All | | ide.chat.activeFile | active | | ide.chat.openTab | open | | ide.chat.uncommittedFileCount | {{count}} uncommitted files | | ide.chat.switchToExecute | Switch to execute mode | | ide.chat.switchToPlan | Switch to plan mode | | ide.chat.attachFile | Attach file | | ide.chat.newChat | New chat | | ide.chat.searchConversations | Search conversations… | | ide.commandPalette.placeholder | Type a command… | | ide.formatting | Formatting… | | ide.contextMenu.newFile | New File... | | ide.contextMenu.newFolder | New Folder... | | ide.contextMenu.paste | Paste | | ide.contextMenu.collapseAll | Collapse All | | ide.contextMenu.deleteCount | Delete {{count}} Items | | ide.contextMenu.copyPaths | Copy Paths | | ide.contextMenu.copyRelativePaths | Copy Relative Paths | | ide.contextMenu.rename | Rename | | ide.contextMenu.delete | Delete | | ide.contextMenu.cut | Cut | | ide.contextMenu.copyPath | Copy Path | | ide.contextMenu.copyRelativePath | Copy Relative Path | | ide.contextMenu.open | Open | | ide.shortcuts.title | Keyboard Shortcuts | | ide.shortcuts.hint | Arrow keys to navigate · Enter to run · Esc to close | | ide.preview.starting | Loading preview... | | ide.preview.noPreview | No preview available | | ide.preview.restarting | Loading preview... | | ide.preview.retryCount | Retry attempt {{count}} | | ide.quickOpen.placeholder | Search files by name… | | ide.quickPicker.placeholder | Type to search… | | ide.quickPicker.loading | Loading… | | ide.quickPicker.noResults | No matching results | | ide.search.replaceInFile | Replace in this file | | ide.search.toggleReplace | Toggle Replace | | ide.search.placeholder | Search | | ide.search.clear | Clear | | ide.search.replacePlaceholder | Replace | | ide.search.confirmReplaceAll | Click again to confirm | | ide.search.replaceAll | Replace All | | ide.search.confirm | Confirm | | ide.search.replaceAllShort | All | | ide.search.replaceConfirmation | Match Case | | ide.search.wholeWord | Match Whole Word | | ide.search.regex | Use Regular Expression | | ide.search.toggleFilters | Toggle Filters | | ide.search.includeFiles | Files to include (e.g. *.ts) | | ide.search.excludeFiles | Files to exclude (e.g. *.min.js) | | ide.search.excludedDirs | Excluded folders (applies to all searches, including the agent) | | ide.search.resultsTruncated | {{count}} results in {{files}} files (truncated) | | ide.search.searching | Searching… | | ide.sidebar.files | Explorer | | ide.sidebar.search | Search | | ide.toolCall.noOutput | (no output) | | ide.toolCall.written | Written | | ide.toolCall.statusUnchanged | Unchanged | | ide.toolCall.newFileLines | new file, {{count}} lines | | ide.toolCall.empty | (empty) | | ide.toolCall.truncated | … (truncated) | | ide.toolCall.noFilesFound | No files found | | ide.toolCall.noMatches | No matches | | ide.toolCall.andMore | … and {{count}} more | | ide.chat.askUserPlaceholder | Or type your own… | | ide.chat.askUserSubmit | Send | | ide.chat.redoChange | Re-apply this change | | ide.chat.undoChange | Undo this change | | ide.toolCall.statusRunning | Running… | | ide.toolCall.statusNotFound | Not found | | ide.toolCall.statusPermissionDenied | Permission denied | | ide.toolCall.statusFailed | Failed | | ide.toolCall.entryCount | {{count}} entries | | ide.toolCall.matchCount | {{count}} matches | | ide.toolCall.fileCount | {{count}} files | | ide.toolCall.packageCount | {{count}} packages | | ide.toolCall.openPackageDoc | Open package docs | | ide.toolCall.statusServerError | Server error | | ide.chat.title | Chat | | ide.chat.placeholder | Send a message... | | ide.chat.placeholderViewer | Message your team | | ide.chat.emptyState | Describe what you want to build... | | ide.chat.you | You | | ide.chat.teamOnly.badge | Team only — visible to your team; {{agentName}} will ignore it | | ide.chat.itemRenderError | This message couldn | | ide.chat.viewProfile | View profile | | ide.chat.molecule | Molecule | | ide.chat.automatic | Sent automatically | | ide.chat.stop | Stop | | ide.chat.send | Send | | ide.chat.mention | Reference a file | | ide.chat.slashCommands | Slash commands | | ide.chat.commit | Commit | | ide.chat.committed | Committed | | ide.chat.retryCommit | Retry | | ide.chat.loopLimitReached | Reached the maximum of {{max}} tool iterations. | | ide.chat.maxLoopsSet | Max tool iterations set to {{n}} | | ide.chat.modelError | Failed to update chat model. | | ide.chat.revertFile | Revert to last commit | | ide.chat.signUpRequired | Sign up to use | | ide.chat.verificationFixing | Fixing errors... | | ide.chat.cancel | Cancel | | ide.chat.save | Save | | ide.chat.soundMode.off | off | | ide.chat.soundMode.whenNotFocused | when not focused | | ide.chat.soundMode.always | always | | ide.chat.soundEvent.message | Team message | | ide.chat.soundEvent.done | Response complete | | ide.chat.soundEvent.error | Error | | ide.chat.soundEvent.tool_result | Tool finished | | ide.chat.soundEvent.file_diff | File changed | | ide.chat.soundEvent.commit_suggestion | Commit suggested | | ide.chat.soundEvent.mode | Mode changed | | ide.chat.soundEvent.loop_limit_reached | Loop limit reached | | ide.chat.soundEvent.verification_result | Verification result | | ide.chat.soundEvent.preview_error | Preview error | | ide.chat.soundEventDesc.message | A teammate posted a team-only note | | ide.chat.soundEventDesc.done | {{agentName}} finished responding | | ide.chat.soundEventDesc.error | Something went wrong during a response | | ide.chat.soundEventDesc.tool_result | A tool call (file read, command, etc.) completed | | ide.chat.soundEventDesc.file_diff | A file was created or modified | | ide.chat.soundEventDesc.commit_suggestion | {{agentName}} is suggesting files to commit | | ide.chat.soundEventDesc.mode | Switched between plan mode and execute mode | | ide.chat.soundEventDesc.loop_limit_reached | Hit the max tool iterations limit | | ide.chat.soundEventDesc.verification_result | Lint or type-check finished running | | ide.chat.soundEventDesc.preview_error | The live preview encountered an error | | ide.chat.voice | Voice | | ide.chat.voiceUnavailable | Dictation is not available in this browser. | | ide.chat.voiceMicBlocked | Microphone access is blocked. | | ide.chat.voicePreparing | Preparing dictation — this can take a moment on first use. | | ide.chat.voiceTranscribeFailed | Transcription failed. | | ide.chat.voiceEngineTitle | Dictation engine | | ide.chat.voiceEnginePrivacy | Every option runs on your device — audio never leaves your browser. | | ide.chat.voiceEngineNoDownload | no download