{"id":15134388,"url":"https://github.com/nyavro/i18nplugin","last_synced_at":"2025-10-23T11:30:36.984Z","repository":{"id":36132650,"uuid":"205401217","full_name":"nyavro/i18nPlugin","owner":"nyavro","description":"Intellij idea i18next support plugin","archived":false,"fork":false,"pushed_at":"2023-04-07T12:03:19.000Z","size":4421,"stargazers_count":75,"open_issues_count":48,"forks_count":12,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-01-30T17:38:45.770Z","etag":null,"topics":["annotations","code-completion","i18next","intellij","intellij-idea","intellij-plugin","json","navigation","quickfix","vue-i18n","yaml"],"latest_commit_sha":null,"homepage":null,"language":"Kotlin","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/nyavro.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2019-08-30T14:44:33.000Z","updated_at":"2024-12-23T13:23:12.000Z","dependencies_parsed_at":"2024-01-25T05:49:41.891Z","dependency_job_id":null,"html_url":"https://github.com/nyavro/i18nPlugin","commit_stats":null,"previous_names":[],"tags_count":15,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nyavro%2Fi18nPlugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nyavro%2Fi18nPlugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nyavro%2Fi18nPlugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nyavro%2Fi18nPlugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nyavro","download_url":"https://codeload.github.com/nyavro/i18nPlugin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237811540,"owners_count":19370144,"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":["annotations","code-completion","i18next","intellij","intellij-idea","intellij-plugin","json","navigation","quickfix","vue-i18n","yaml"],"created_at":"2024-09-26T05:20:20.270Z","updated_at":"2025-10-23T11:30:31.287Z","avatar_url":"https://github.com/nyavro.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"# i18nPlugin\n\n[![Codacy Badge](https://api.codacy.com/project/badge/Grade/1ec904e969c348eeb9b1a010ab76d1b9)](https://app.codacy.com/manual/nyavro/i18nPlugin?utm_source=github.com\u0026utm_medium=referral\u0026utm_content=nyavro/i18nPlugin\u0026utm_campaign=Badge_Grade_Dashboard)\n[![codebeat badge](https://codebeat.co/badges/efe74563-add4-4309-a673-dfce2e839677)](https://codebeat.co/projects/github-com-nyavro-i18nplugin-master)\n[![Build Status](https://travis-ci.com/nyavro/i18nPlugin.svg?branch=master)](https://travis-ci.com/nyavro/i18nPlugin)\n[![Maintainability](https://api.codeclimate.com/v1/badges/b9d170510bcb7bdd4ef0/maintainability)](https://codeclimate.com/github/nyavro/i18nPlugin/maintainability)\n[![codecov](https://codecov.io/gh/nyavro/i18nPlugin/branch/master/graph/badge.svg)](https://codecov.io/gh/nyavro/i18nPlugin)\n[![Hits-of-Code](https://hitsofcode.com/github/nyavro/i18nPlugin)](https://hitsofcode.com/view/github/nyavro/i18nPlugin)\n![](https://tokei.rs/b1/github/nyavro/i18nPlugin)\n\n[![Downloads Badge](https://img.shields.io/jetbrains/plugin/d/12981-i18n-support.svg)](https://plugins.jetbrains.com/plugin/12981-i18n-support)\n\nIntellij idea i18next support plugin\n\n\u003c!-- Plugin description --\u003e\n\n\u003c!-- Plugin description end --\u003e\n\n## Features\n   ### Annotations\n\n-   Annotates correct i18n keys:\n\n    ![Simple annotation](docs/img/p1.png)\n\n-   Unresolved properties:\n\n    ![Annotates unresolved part of the key](docs/img/p2.png)\n\n-   As well as unresolved files:\n\n    ![Unresolved json file](docs/img/p3.png)\n\n-   References to Json object:\n\n    ![Reference to Json object](docs/img/p4.png)\n\n-   References to plural values:\n\n    ![Reference to plural value](docs/img/p5.png)\n    \n-   Missing translations\n \n    Gets turned on by 'Enable partially translated keys inspection' configuration option     \n\n   ### Navigation\n\n-   I18nPlugin provides navigation from key to its declaration in Json resource    \n\n    ![Navigation from key to translation](docs/img/p6.png)\n\n-   and to partially resolved keys:\n\n    ![Navigation from partially resolved](docs/img/p7.png)\n    \n   ### Key extraction\n-   extract i18n translation from plain text     \n    \n   ### Hints\n \n-   In the case of a single translation matching to given key the translation displayed as a hint (Ctrl + hover):\n \n    ![Single translatin hint](docs/gif/translation-as-hint.gif)\n    \n   ### Configuration options \n   (File-\u003eTools-\u003eI18n plugin configuration) \n \n-   Default namespace\n \n    Configure up to 100 default namespace translation files. \n    Multiple default namespaces separated by comma, semicolon or whitespace:\n    \n        first;second third,fourth\n        \n    will resolve translations in files first.json, second.json, third.json, fourth.json\n     \n-   Extract translation sorted by key\n    \n    When set, key extracted in json or yaml file is inserted in sorted (by key) position\n    \n-   Enable partially translated keys inspection\n    \n    When set, warns when key exists in some translation files and is missing in another; suggests 'Create missing translations' quick fix \n\n-   Vue \n\n    Enables vue-i18n support\n    \n-   Support vue namespaces \n\n    Applicable only with Vue setting. When set, considers first component of a translation key as 'namespace'. \n    For instance, key 'sample.xx.xx' will try to find translation inside the file 'sample.json/yml'. \n    \n## Frameworks \u0026 Libraries\n\n-   Javascript \u0026 Typescript\n-   react-i18next\n-   Vue\n-   Vue Single File Components - supported annotations and code completion. \nReferences navigation, hints - not supported because of Intellij IDEA platform limitations.\n-   Php\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnyavro%2Fi18nplugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnyavro%2Fi18nplugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnyavro%2Fi18nplugin/lists"}