{"id":22218562,"url":"https://github.com/megahertz/easy-translate","last_synced_at":"2025-03-25T07:22:51.694Z","repository":{"id":57218760,"uuid":"90982789","full_name":"megahertz/easy-translate","owner":"megahertz","description":"A very simple translation library in commonjs format","archived":false,"fork":false,"pushed_at":"2018-06-12T16:37:01.000Z","size":34,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-16T10:08:22.231Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/megahertz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-05-11T13:32:57.000Z","updated_at":"2023-03-17T12:08:16.000Z","dependencies_parsed_at":"2022-08-28T21:41:01.176Z","dependency_job_id":null,"html_url":"https://github.com/megahertz/easy-translate","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/megahertz%2Feasy-translate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/megahertz%2Feasy-translate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/megahertz%2Feasy-translate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/megahertz%2Feasy-translate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/megahertz","download_url":"https://codeload.github.com/megahertz/easy-translate/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245415598,"owners_count":20611574,"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":[],"created_at":"2024-12-02T22:27:09.039Z","updated_at":"2025-03-25T07:22:51.674Z","avatar_url":"https://github.com/megahertz.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# easy-translate\n[![Build Status](https://travis-ci.org/megahertz/easy-translate.svg?branch=master)](https://travis-ci.org/megahertz/easy-translate)\n[![NPM version](https://badge.fury.io/js/easy-translate.svg)](https://badge.fury.io/js/easy-translate)\n[![Dependencies status](https://david-dm.org/megahertz/easy-translate/status.svg)](https://david-dm.org/megahertz/easy-translate)\n\n## Description\n\nA very simple translation library in commonjs format. It uses almost\nthe same approach as Yii 1 and Drupal. Can be used in node.js as well\nas in a browser.\n\n## Installation\n\nInstall with [npm](https://npmjs.org/package/easy-translate):\n\n    npm install easy-translate\n\n## Usage\n\n```js\nvar t       = require('easy-translate');\nvar package = require('./package.json');\n\nt.language('ru');\n\nconsole.log(t('Hello!'));\n// → Привет\n\nconsole.log(t('It\\'s {0} v{1}', package.name, package.version));\n// → Это easy-translate v1.0.0\n\nconsole.log(t('This library can be found at {url}.', {\n  url: package.homepage\n}));\n// → Вы можете найти эту библиотеку по адресу https://github.com/mega…\n\nvar count = Object.keys(package.dependencies).length;\nconsole.log(t('It has {0} {0|dependency|dependencies}.', count));\n// → Она содержит 0 зависимостей\n\nconsole.log(t('The current language is {0}.', t.language()));\n// Текущий язык - ru\n```\n\n### Load translations\n```js\n// Load built-in plural rules for specified language\nvar plural = require('easy-translate/langs/ru.js');\n\nt.load({\n  language: 'ru',\n  translations: {\n    'Hello!': 'Привет',\n    'It has {0} {0|dependency|dependencies}.': 'Она содержит {0} {0|зависимость|зависимости|зависимостей}.',\n    'It\\'s {0} v{1}': 'Это {0} v{1}',\n    'The current language is {0}.': 'Текущий язык - {0}.',\n    'This library can be found at {url}.': 'Вы можете найти эту библиотеку по адресу {url}'\n  },\n  plural: plural\n});\n```\n\n### Methods\n\n#### t(message: string, params?: any, ...otherParams?: any[]): string\nTranslate a string\n\n**params** can be:\n\n - a string, number (template {0} or {n} or {s})\n - an array (templates {0}, {1}, …)\n - an object (templates {user}, {id}, …), also it has special values:\n     - _lang: use this language instead of the current\n     - _category: by default, all strings a loaded from category app\n\n**otherParams** is used for positional templates {0}, {1}, …\n\n#### t.load(languageData: LanguageData)\nLoads translations\n\n**languageData** is object:\n\n - language: string\n - category: string, \"app\" by default\n - translations: object similar to { 'Hello': 'Привет', … }\n - plural: function with plural rules for specified language. This\n    library already contains plural rules for 200 languages. See\n    [langs](langs) folder.\n\n#### t.language(): string\nGet the current language\n\n#### t.language(language: string)\nSet the current language\n\n### Template language\n\n`t('test')` Just returns a translation\n\n`t('hi {user}', { 'user': 'Mike' })` Replace '{user}' by 'Mike'\n\n`t('It\\'s {0} v{1}', name, version)` Replace '{0}' by the first\n  argument, {1} by the second\n\n`t('{0|dog|dogs}', 2)` Choose plural form corresponding to params and\na plural rule for the language.\n\n`t('{n}', 1)` `t('{s}', 1)` - Aliases for {0}\n\n## License\n\nLicensed under MIT.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmegahertz%2Feasy-translate","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmegahertz%2Feasy-translate","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmegahertz%2Feasy-translate/lists"}