Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.


fluent-vue logo

Internationalization plugin for Vue.js

GitHub Workflow Status codecov npm bundle size Standard - JavaScript Style Guide 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

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

<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

πŸ“– Documentation

Documentation can be found here:

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

πŸ“œ Changelog

Changes for each release are documented in the

πŸ“¦ Packages

Project NPM Repo
fluent-vue fluent-vue fluent-vue/fluent-vue
unplugin-fluent-vue unplugin-fluent-vue fluent-vue/unplugin-fluent-vue

πŸ“„ License

MIT License Β© 2020 Ivan Demchuk