A simple and flexible localization library for Vue 3

Vue3 Grizzly Localization

Vue3 Grizzly Localization is a simple, lightweight, and flexible localization library for Vue 3. It allows you to easily manage your application’s translations and supports features like namespacing.

Installation

Install Vue3 Grizzly Localization using npm:

npm install vue3-grizzly-localization

Usage

First, initialize Grizzly Localization in your main.js file:

import { createGrizzly } from "vue3-grizzly-localization";

const grizzly = createGrizzly({
  lang: "en",
  locales: {
    en: {
      hello: "Hello",
    },
    ua: {
      hello: "Привіт",
    },
  },
});

app.use(grizzly);

Then, use Grizzly Localization in your components:

import { useGrizzly } from "vue3-grizzly-localization";

const { t } = useGrizzly();

console.log(t("hello")); // 'Hello'

You can also specify a namespace when calling useGrizzly:

const { t } = useGrizzly("namespace");

console.log(t("key")); // 'Translation'

In this case, t(‘key’) will return the translation for the key ‘namespace.key’.

To change the current language, use the changeLanguage function:

const { t, changeLanguage } = useGrizzly();

changeLanguage("ua"); // Change the language to Ukrainian
console.log(t("hello")); // 'Привіт'

You can also get a list of available languages using the availableLanguages function:

const { availableLanguages } = useGrizzly();

console.log(availableLanguages()); // ['en', 'ua']

Interpolation

Grizzly Localization supports interpolation of variables within translations. You can provide an object containing placeholder-value pairs as a second argument to the t function:

import { useGrizzly } from "vue3-grizzly-localization";

const { t } = useGrizzly();

console.log(t("welcome", { name: "John" })); // 'Welcome, John'

For this to work, your locales object should contain placeholders wrapped in curly braces:

const grizzly = createGrizzly({
  lang: "en",
  locales: {
    en: {
      welcome: "Welcome, {name}",
    },
    ua: {
      welcome: "Привіт, {name}",
    },
  },
});

app.use(grizzly);

Note: The placeholders in your strings must match the keys in the provided interpolation object.

Contributing

Contributions are welcome! Please feel free to submit a pull request.

License

Vue3 Grizzly Localization is licensed under the MIT license.

GitHub

View Github


Related Posts

Recent Posts

ഇടുക്കിയിലെ മലയോര മേഖലകളിൽ രാത്രിയാത്ര നിരോധിച്ചു. രാത്രി ഏഴു മുതൽ രാവിലെ ആറു വരെയാണ് നിരോധനം

ഏന്തയാർ ഈസ്റ്റിൽ പ്രളയത്തിൽ തകർന്ന പാലത്തിന് പകരം പുതിയ പാലം നിർമ്മിക്കുവാൻ താത്ക്കാലിക പാലം പൊളിച്ച് നീക്കി

Explore the Investment Opportunities: A Comprehensive Guide to Different Types of Mutual Funds

Title: Understanding Mutual Funds: A Beginner's Guide to Investing

തീവ്രമഴ മുന്നറിയിപ്പിന്റെ പശ്ചാതലത്തിൽ സംസ്ഥാനം ജാഗ്രതയിൽ

250,000 അപേക്ഷകൾ വർദ്ധിച്ചതിനാൽ ട്രാൻസ്‌പോർട്ട് കമ്മീഷണർ പരിശോധന പുനരാരംഭിക്കും

ഏലക്കയിൽ കീടനാശിനി സാന്നിധ്യം; ആറര ലക്ഷത്തിലധികം ടിൻ അരവണ നശിപ്പിക്കാൻ ടെൻഡർ ക്ഷണിച്ച് ദേവസ്വം ബോർഡ്‌

ഭീമൻ പാറക്കഷണങ്ങൾ അടർന്ന് ദേശീയ പാതയിലേക്ക് വീഴുന്നത് പതിവാകുന്നു. കുട്ടിക്കാനത്തിനും മുണ്ടക്കയത്തിനുമിടയിൽ നിലനിൽക്കുന്നത് വൻ അപകട ഭീഷണി

ചക്രവാതച്ചുഴി:അതിശക്തമായ മഴ വരുന്നു

പ്ലസ് വൺ പ്രവേശനം. അക്ഷയയിൽ തിക്കി തിരക്കേണ്ട, നെറ്റിവിറ്റി/ജാതി തെളിയിക്കാൻ പത്താംതരം സർട്ടിഫിക്കറ്റ് മതി