{"id":15912466,"url":"https://github.com/fluent-vue/fluent-vue","last_synced_at":"2025-05-15T10:05:51.671Z","repository":{"id":35053182,"uuid":"194986152","full_name":"fluent-vue/fluent-vue","owner":"fluent-vue","description":"Internationalization plugin for Vue.js","archived":false,"fork":false,"pushed_at":"2025-05-08T23:12:33.000Z","size":7944,"stargazers_count":261,"open_issues_count":3,"forks_count":13,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-05-09T08:36:09.335Z","etag":null,"topics":["ftl","hacktoberfest","i18n","internationalization","internationalization-plugin","javascript","localization","translation","vue","vue2","vue3","vuejs"],"latest_commit_sha":null,"homepage":"https://fluent-vue.demivan.me","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/fluent-vue.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,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-07-03T05:35:20.000Z","updated_at":"2025-05-02T08:07:45.000Z","dependencies_parsed_at":"2023-10-04T00:11:47.511Z","dependency_job_id":"d193d463-b3f4-4151-b7bd-ae6e68d9de41","html_url":"https://github.com/fluent-vue/fluent-vue","commit_stats":{"total_commits":818,"total_committers":12,"mean_commits":68.16666666666667,"dds":0.5525672371638142,"last_synced_commit":"3dc02644e53efe62a4cb37afc3af550b97296364"},"previous_names":["demivan/fluent-vue"],"tags_count":59,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fluent-vue%2Ffluent-vue","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fluent-vue%2Ffluent-vue/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fluent-vue%2Ffluent-vue/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fluent-vue%2Ffluent-vue/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fluent-vue","download_url":"https://codeload.github.com/fluent-vue/fluent-vue/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254319718,"owners_count":22051072,"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":["ftl","hacktoberfest","i18n","internationalization","internationalization-plugin","javascript","localization","translation","vue","vue2","vue3","vuejs"],"created_at":"2024-10-06T16:04:59.824Z","updated_at":"2025-05-15T10:05:46.651Z","avatar_url":"https://github.com/fluent-vue.png","language":"TypeScript","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"readme":"[![SWUbanner](https://raw.githubusercontent.com/vshymanskyy/StandWithUkraine/main/banner-direct-single.svg)](https://vshymanskyy.github.io/StandWithUkraine)\n\n\u003ch1 align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/fluent-vue/docs/HEAD/src/public/assets/logo.svg\" alt=\"fluent-vue logo\" height=\"150\" /\u003e\n\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  Internationalization plugin for Vue.js\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/fluent-vue/fluent-vue/actions\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/actions/workflow/status/fluent-vue/fluent-vue/test.yml\" alt=\"GitHub Workflow Status\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://codecov.io/gh/fluent-vue/fluent-vue\"\u003e\n    \u003cimg src=\"https://codecov.io/gh/fluent-vue/fluent-vue/branch/main/graph/badge.svg?token=0JSSE94EGJ\" alt=\"codecov\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://bundlejs.com?q=fluent-vue\u0026config={%22esbuild%22:{%22format%22:%22esm%22,%22minify%22:true,%22treeShaking%22:true,%22external%22:[%22vue%22,%22@fluent/bundle%22]}}\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/dynamic/json?label=bundle%20size\u0026query=%24.size.size\u0026suffix=%20%28bundlejs%29\u0026url=https%3A%2F%2Fdeno.bundlejs.com%2F%3Fq%3Dfluent-vue%26config%3D%257B%2522esbuild%2522%253A%257B%2522external%2522%253A%255B%2522vue%2522%252C%2520%2522%2540fluent%252Fbundle%2522%255D%257D%257D\" alt=\"npm bundle size\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://standardjs.com\"\u003e\n    \u003cimg src=\"https://img.shields.io/badge/code_style-standard-brightgreen.svg\" alt=\"Standard - JavaScript Style Guide\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/fluent-vue/fluent-vue/blob/main/LICENSE\"\u003e\n    \u003cimg src=\"https://img.shields.io/github/license/fluent-vue/fluent-vue\" alt=\"GitHub license\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n`fluent-vue` is a [Vue.js](https://vuejs.org) integration for [Fluent.js](https://github.com/projectfluent/fluent.js) - JavaScript implementation of Mozilla's [Project Fluent](https://projectfluent.org)\n\n## 🚀 Features\n\n- **Simple api for developers**: Just 2 methods, 1 directive and 1 component\n- **Powerfull syntax for translators**: Use the entire expressive power of every language without need for changes to application source code\n- **Isolation**: Locale-specific logic doesn't leak to other locales. A simple string in English can map to a complex multi-variant translation in another language\n- **Seamless migration**: Works for **both** Vue 3 and 2\n- **No bundler required**: Usable via CDN\n\n## 🎉 Example\n\n```vue\n\u003ctemplate\u003e\n  \u003cdiv\u003e\n    \u003cdiv\u003e{{ $t('hello-user', { userName }) }}\u003c/div\u003e\n    \u003cdiv\u003e{{ $t('shared-photos', { userName, photoCount, userGender }) }}\u003c/div\u003e\n  \u003c/div\u003e\n\u003c/template\u003e\n\n\u003cfluent locale=\"en\"\u003e\n# Simple things are simple.\nhello-user = Hello, {$userName}!\n\n# Complex things are possible.\nshared-photos =\n  {$userName} {$photoCount -\u003e\n     [one] added one photo\n    *[other] added {$photoCount} new photos\n  } to {$userGender -\u003e\n     [male] his stream\n     [female] her stream\n    *[other] their stream\n  }.\n\u003c/fluent\u003e\n```\n\n## 📖 Documentation\n\nDocumentation can be found here: [https://fluent-vue.demivan.me](https://fluent-vue.demivan.me)\n\nExamples for different Vue.js versions and build systems can be found [here](https://github.com/fluent-vue/examples).\n\n## 📜 Changelog\n\nChanges for each release are documented in the [CHANGELOG.md](https://github.com/demivan/fluent-vue/blob/main/CHANGELOG.md).\n\n## 📦 Packages\n\n| Project | NPM | Repo |\n| ------- | --- | ---- |\n| fluent-vue | [![fluent-vue](https://img.shields.io/npm/v/fluent-vue.svg)](https://www.npmjs.com/package/fluent-vue) | [fluent-vue/fluent-vue](https://github.com/fluent-vue/fluent-vue)\n| unplugin-fluent-vue | [![unplugin-fluent-vue](https://img.shields.io/npm/v/unplugin-fluent-vue.svg)](https://www.npmjs.com/package/unplugin-fluent-vue) | [fluent-vue/unplugin-fluent-vue](https://github.com/fluent-vue/unplugin-fluent-vue)\n\n## 📄 License\n\n[MIT License](https://github.com/fluent-vue/fluent-vue/blob/main/LICENSE) © 2020 [Ivan Demchuk](https://github.com/demivan)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffluent-vue%2Ffluent-vue","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffluent-vue%2Ffluent-vue","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffluent-vue%2Ffluent-vue/lists"}