README.md

May 16, 2026 ยท View on GitHub

SWUbanner

fluent-vue logo

Internationalization plugin for Vue.js

GitHub Workflow Status codecov GitHub license

fluent-vue is a Vue.js integration for Fluent.js - JavaScript implementation of Mozilla's Project Fluent

๐Ÿš€ Features

  • Simple api for developers: Just 2 methods, 1 directive and 1 component
  • Powerfull syntax for translators: Use the entire expressive power of every language without need for changes to application source code
  • 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
  • Seamless migration: Works for both Vue 3 and 2
  • No bundler required: Usable via CDN

๐ŸŽ‰ Example

<template>
  <div>
    <div>{{ $t('hello-user', { userName }) }}</div>
    <div>{{ $t('shared-photos', { userName, photoCount, userGender }) }}</div>
  </div>
</template>

<fluent locale="en">
# Simple things are simple.
hello-user = Hello, {$userName}!

# Complex things are possible.
shared-photos =
  {$userName} {$photoCount ->
     [one] added one photo
    *[other] added {$photoCount} new photos
  } to {$userGender ->
     [male] his stream
     [female] her stream
    *[other] their stream
  }.
</fluent>

๐Ÿ“– Documentation

Documentation can be found here: https://fluent-vue.demivan.me

Examples for different Vue.js versions and build systems can be found here.

๐Ÿ“ฆ Packages

This repository is a monorepo managed with pnpm workspaces.

PackageNPMSource
fluent-vuefluent-vuepackages/fluent-vue
unplugin-fluent-vueunplugin-fluent-vuepackages/unplugin-fluent-vue

๐Ÿ› ๏ธ Development

pnpm install
pnpm build
pnpm test
pnpm typecheck

๐Ÿ“„ License

MIT License ยฉ 2020 Ivan Demchuk