{"id":19703472,"url":"https://github.com/crowdin/vscode-crowdin","last_synced_at":"2025-10-16T06:01:53.604Z","repository":{"id":35061621,"uuid":"188181675","full_name":"crowdin/vscode-crowdin","owner":"crowdin","description":"Crowdin Explorer for Visual Studio Code","archived":false,"fork":false,"pushed_at":"2025-04-01T11:31:32.000Z","size":10347,"stargazers_count":54,"open_issues_count":1,"forks_count":6,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-04-20T13:07:59.585Z","etag":null,"topics":["localization","vscode-extension"],"latest_commit_sha":null,"homepage":"https://marketplace.visualstudio.com/items?itemName=Crowdin.vscode-crowdin","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/crowdin.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-05-23T07:16:32.000Z","updated_at":"2025-04-05T06:11:59.000Z","dependencies_parsed_at":"2023-10-28T15:35:03.194Z","dependency_job_id":"4801cd13-903d-4436-b098-3a06f347853a","html_url":"https://github.com/crowdin/vscode-crowdin","commit_stats":null,"previous_names":[],"tags_count":30,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/crowdin%2Fvscode-crowdin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/crowdin%2Fvscode-crowdin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/crowdin%2Fvscode-crowdin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/crowdin%2Fvscode-crowdin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/crowdin","download_url":"https://codeload.github.com/crowdin/vscode-crowdin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251518785,"owners_count":21602210,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["localization","vscode-extension"],"created_at":"2024-11-11T21:17:58.875Z","updated_at":"2025-10-16T06:01:53.500Z","avatar_url":"https://github.com/crowdin.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Crowdin for VS Code [![Tweet](https://img.shields.io/twitter/url/http/shields.io.svg?style=social)](https://twitter.com/intent/tweet?url=https%3A%2F%2Fgithub.com%2Fcrowdin%2Fvscode-crowdin\u0026text=Manage%20and%20synchronize%20your%20localization%20resources%20with%20Crowdin%20project%20instantly%20from%20Visual%20Studio%20Code)\u0026nbsp;[![GitHub Repo stars](https://img.shields.io/github/stars/crowdin/vscode-crowdin?style=social\u0026cacheSeconds=1800)](https://github.com/crowdin/vscode-crowdin/stargazers)\n\nIntegrate your Visual Studio Code projects with Crowdin to streamline the localization process. The plugin allows you to instantly upload new source strings to your Crowdin project, autocomplete string keys, check translation progress and download translations from Crowdin.\n\n\u003cdiv align=\"center\"\u003e\n\n[Get it from the VS Code Marketplace →](https://marketplace.visualstudio.com/items?itemName=Crowdin.vscode-crowdin)\n\n[![Visual Studio Marketplace Installs](https://img.shields.io/visual-studio-marketplace/i/Crowdin.vscode-crowdin?logo=visual-studio-code\u0026cacheSeconds=3000)](https://marketplace.visualstudio.com/items?itemName=Crowdin.vscode-crowdin)\n[![Visual Studio Marketplace Downloads](https://badgen.net/vs-marketplace/d/Crowdin.vscode-crowdin?cache=1000)](https://marketplace.visualstudio.com/items?itemName=Crowdin.vscode-crowdin)\n[![Visual Studio Marketplace Rating (Stars)](https://img.shields.io/visual-studio-marketplace/stars/Crowdin.vscode-crowdin?logo=visual-studio-code\u0026cacheSeconds=3000)](https://marketplace.visualstudio.com/items?itemName=Crowdin.vscode-crowdin\u0026ssr=false#review-details)\n[![Visual Studio Marketplace Version](https://img.shields.io/visual-studio-marketplace/v/Crowdin.vscode-crowdin?cacheSeconds=3000)](https://marketplace.visualstudio.com/items?itemName=Crowdin.vscode-crowdin)\n\n \u003c/div\u003e\n\n[\u003cp align=\"center\"\u003e\u003cimg src=\"resources/cover.png\" data-canonical-src=\"resources/cover.png\" width=\"1200\" height=\"auto\" align=\"center\"/\u003e\u003c/p\u003e](https://store.crowdin.com/visual-studio-code/)\n\n## Features\n\nA new component will be introduced in the Activity Bar called the *Crowdin*. The plugin will scan each workspace for a Crowdin-specific configuration file and will build a tree with source files.\n\n### Upload source files to Crowdin\n\nUpload source files to Crowdin for translation using the **\"Upload\"** panel. It displays all the source files matching the specified pattern in the configuration file. You can either individually select files to upload to Crowdin or upload all files at once.\n\n[\u003cp align=\"center\"\u003e\u003cimg src=\"resources/animations/upload.gif\" data-canonical-src=\"resources/animations/upload.gif\" width=\"600\" height=\"auto\" align=\"center\"/\u003e\u003c/p\u003e](https://store.crowdin.com/visual-studio-code/)\n\n### Download source and translation files from Crowdin\n\nDownload source and translation files from Crowdin using the **\"Download\"** panel. It displays all the source files matching the specified pattern in the configuration file. You can download translations for all target languages as well as download source files edited in Crowdin.\n\n[\u003cp align=\"center\"\u003e\u003cimg src=\"resources/animations/download.gif\" data-canonical-src=\"resources/animations/download.gif\" width=\"600\" height=\"auto\" align=\"center\"/\u003e\u003c/p\u003e](https://store.crowdin.com/visual-studio-code/)\n\n### Track translation progress\n\nTrack progress of translated and approved strings for each project and target language.\n\n[\u003cp align=\"center\"\u003e\u003cimg src=\"resources/animations/progress.gif\" data-canonical-src=\"resources/animations/progress.gif\" width=\"600\" height=\"auto\" align=\"center\"/\u003e\u003c/p\u003e](https://store.crowdin.com/visual-studio-code/)\n\n### String keys autocompletion\n\nUse string keys in your code fetched from Crowdin and available in autocomplete suggestions. Whenever a user types something, the VSCode autocompletion will suggest available string keys from Crowdin.\n\nThere is a possibility to configure file extensions, where the string keys autocompletion will appear. By default, autocompletion is turned on and available in all files.\n\nStrings for autocompletion are loaded during the bootstrap of VSCode and are also updated whenever there was a change in the `crowdin.yml` configuration file.\n\n[\u003cp align=\"center\"\u003e\u003cimg src=\"resources/animations/autocomplete.gif\" data-canonical-src=\"resources/animations/autocomplete.gif\" width=\"600\" height=\"auto\" align=\"center\"/\u003e\u003c/p\u003e](https://store.crowdin.com/visual-studio-code/)\n\nThis gif illustrates the autocompletion of string keys in a React project that uses the [Lingui](https://lingui.dev/tools/crowdin) library.\n\n### String extraction\n\nThe plugin allows you to extract strings from your source files and upload them to Crowdin. Just select the necessary text and use the `\"Crowdin: Extract String\"` from the context menu. You will then be asked to enter the key for that string and select the file to upload it to.\n\n### Command Palette commands\n\nThe plugin provides the following commands in the VS Code [Command Palette](https://code.visualstudio.com/docs/getstarted/userinterface#_command-) (\u003ckbd\u003eShift\u003c/kbd\u003e+\u003ckbd\u003eCommand\u003c/kbd\u003e+\u003ckbd\u003eP\u003c/kbd\u003e/\u003ckbd\u003eCtrl\u003c/kbd\u003e+\u003ckbd\u003eShift\u003c/kbd\u003e+\u003ckbd\u003eP\u003c/kbd\u003e):\n\n- `Crowdin: Sign In` to log in into your Crowdin profile\n- `Crowdin: Sign Out` to log out from your Crowdin profile\n- `Crowdin: Select Project` to select Crowdin project\n- `Crowdin: Open Configuration` to open Crowdin configuration file\n- `Crowdin: Focus on Upload View` to focus on the Upload view\n- `Crowdin: Focus on Download View` to focus on the Download view\n- `Crowdin: Focus on Progress View` to focus on the Progress view\n\n[\u003cp align=\"center\"\u003e\u003cimg src=\"resources/animations/command-palette.gif\" data-canonical-src=\"resources/animations/command-palette.gif\" width=\"600\" height=\"auto\" align=\"center\"/\u003e\u003c/p\u003e](https://store.crowdin.com/visual-studio-code/)\n\n## Setup\n\n### Installation\n\nInstall the *Crowdin* plugin using one of the following methods:\n\n- open VS Code Extensions (\u003ckbd\u003eCtrl\u003c/kbd\u003e+\u003ckbd\u003eShift\u003c/kbd\u003e+\u003ckbd\u003eX\u003c/kbd\u003e), search for *Crowdin* and click **Install**\n\n     or\n\n- launch VS Code Quick Open (\u003ckbd\u003eCtrl\u003c/kbd\u003e+\u003ckbd\u003eP\u003c/kbd\u003e), paste the below command, and press **Enter**\n        ```\n        ext install Crowdin.vscode-crowdin\n        ```\n\n### Authorization via browser\n\nRun the following [commands](https://code.visualstudio.com/docs/getstarted/userinterface#_command-palette) to prepare workspace:\n\n- `Crowdin: Sign In` to log in into your Crowdin profile\n- `Crowdin: Select Project` to select Crowdin project\n- `Crowdin: Create configuration` to generate Crowdin configuration file\n  - Edit `files` section according to your project needs\n\n### Manual setup\n\n- Create a new Personal Access Token in your Crowdin account settings.\n- Get the Project ID in the Tools \u003e API section on your Crowdin project page.\n- Prepare a `crowdin.yml` configuration file and add it to the needed workspace in Visual Studio Code.\n\n## Configuration\n\nTo work with the plugin in the Visual Studio Code workspace, there should be a Crowdin configuration file called either `crowdin.yml` or `crowdin.yaml`. The plugin scans each Visual Studio Code workspace to find a Crowdin configuration file and automatically builds the tree with source files in the *Crowdin* component available in your Activity Bar.\n\nYou can create a new configuration file by using the \"Crowdin: Create configuration\" command in the VS Code Command Palette (\u003ckbd\u003eShift\u003c/kbd\u003e+\u003ckbd\u003eCommand\u003c/kbd\u003e+\u003ckbd\u003eP\u003c/kbd\u003e/\u003ckbd\u003eCtrl\u003c/kbd\u003e+\u003ckbd\u003eShift\u003c/kbd\u003e+\u003ckbd\u003eP\u003c/kbd\u003e).\n\n**Configuration file example:**\n\n```yaml\n\"files\": [\n  {\n    \"source\": \"/sources/**/*.xml\",\n    \"translation\": \"/translations/%two_letters_code%/%original_file_name%\"\n  }\n]\n```\n\n**All supported options:**\n\n```yaml\n\"project_id\": \"projectId\" // optional\n\"api_token\": \"apiToken\" // optional\n\"base_path\": \"folder\" // optional\n\"branch\": \"master\" // optional\n\"base_url\": \"https://{organization-name}.crowdin.com\" // optional (for Crowdin Enterprise only)\n\n\"files\": [\n  {\n    \"source\": \"/sources/**/*.xml\",\n    \"translation\": \"/translations/%two_letters_code%/%original_file_name%\",\n    \"update_option\": \"update_as_unapproved\", // optional\n    \"excluded_target_languages\": [\"uk\", \"fr\"], // optional\n    \"labels\": [\"android\", \"emails\"], // optional\n    \"dest\": \"/app/%file_name%.xml\", // optional\n    \"type\": \"android\", // optional\n    \"update_strings\": false, // optional (for strings based projects)\n    \"cleanup_mode\": true // optional (for strings based projects)\n  },\n  {\n    \"source\": \"multicolumn.csv\",\n    \"translation\": \"multicolumn.csv\",\n    \"scheme\": \"identifier,source_phrase,context,uk,ru,fr\" // optional\n  }\n]\n```\n\n**Tip:** You don't need to specify the `project_id` and `api_token` in your configuration file if you use browser authorization in the plugin.\n\nYou can also use environment variables in the configuration file [Environment variables](https://support.crowdin.com/configuration-file/#api-credentials-from-environment-variables):\n\n```yaml\n\"project_id_env\": \"CROWDIN_PROJECT_ID\"\n\"api_token_env\": \"CROWDIN_PERSONAL_TOKEN\"\n\"base_path_env\": \"CROWDIN_BASE_PATH\"\n\"base_url_env\": \"CROWDIN_BASE_URL\"\n```\n\n## Extension Settings\n\nThis extension contributes the following settings:\n\n- `crowdin.autoRefresh`: enable/disable auto refresh of the file tree after each change in the Crowdin configuration file.\n- `crowdin.stringsCompletion`: enable/disable autocompletion of strings keys.\n- `crowdin.stringsCompletionFileExtensions`: comma-separated list of file extensions for which autocomplete should be active. By default, strings autocomplete will be active in all files.\n- `crowdin.useGitBranch`: enable/disable the use of a Git branch as a Crowdin branch.\n\n## Limitations\n\nAt the moment, the plugin does not support all possible properties in the configuration file (see [Configuration file](https://support.crowdin.com/configuration-file/)). All properties which are supported by this plugin are listed in the example above.\n\n## Seeking Assistance\n\nIf you find any problems or would like to suggest a feature, please read the [How can I contribute](/CONTRIBUTING.md#how-can-i-contribute) section in our contributing guidelines.\n\n## Contributing\n\nWe are happy to accept contributions to the Crowdin Visual Studio Code Plugin. If you want to contribute, please read the [Contributing](/CONTRIBUTING.md) guidelines.\n\n## License\n\n\u003cpre\u003e\nThe Crowdin Visual Studio Code Plugin is licensed under the MIT License.\nSee the LICENSE file distributed with this work for additional\ninformation regarding copyright ownership.\n\nExcept as contained in the LICENSE file, the name(s) of the above copyright\nholders shall not be used in advertising or otherwise to promote the sale,\nuse or other dealings in this Software without prior written authorization.\n\u003c/pre\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcrowdin%2Fvscode-crowdin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcrowdin%2Fvscode-crowdin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcrowdin%2Fvscode-crowdin/lists"}