Skip to content

Makio64/vue-tiny-translation

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Vue Tiny Translation 🌍✨

A minimalist reactive translation plugin for Vue 3. Super lightweight (0.32KB gzipped), simple, and efficient internationalization solution.

🌐 Live Demo - Try it now ! Screenshot 2025-05-24 at 18 40 31

Features

  • 🚀 Tiny: Minimal footprint, maximum performance
  • Reactive: Automatically updates components when translations change, no page reload!
  • 🔧 Simple API: Super easy to use with intuitive methods
  • 🌐 Dynamic Loading: Load translations asynchronously
  • 📦 TypeScript Support: Full TypeScript definitions included

Installation

npm install vue-tiny-translation

Quick Start

1. Install the plugin

import { createApp } from 'vue' import TinyTranslation from 'vue-tiny-translation' import App from './App.vue' const app = createApp(App) app.use(TinyTranslation) app.mount('#app')

2. Load translations and use in components

<template> <div> <h1>{{ $t('hello') }}</h1> <p>{{ $t('goodbye') }}</p> <button @click="changeLanguage">Change Language</button> </div> </template> <script> import { loadTranslations } from 'vue-tiny-translation'  export default {  async mounted() {  // Auto-load based on browser language  const lang = navigator.language.split('-')[0]  await loadTranslations(`/translations/${lang}.json`)  },  methods: {  async changeLanguage() {  await loadTranslations('/translations/fr.json')  }  } } </script>

Load translation files from anywhere

// Load from anywhere await loadTranslations('/translations/en.json') // Local files await loadTranslations('/api/translations/en') // API endpoints

Example of organization using local files

public/translations/ en.json fr.json de.json 
{ "hello": "Hello", "goodbye": "Goodbye" }

API

  • $t(key, fallback?) - Translate in templates
  • translate(key, fallback?) - Translate in JavaScript
  • loadTranslations(path) - Load translations from any source

Demo & Testing

🌐 Live Demo - Try it now !

Local Testing: Clone and run the example locally:

cd example npm install npm run dev

Open http://localhost:5173 and see the plugin working with automatic language detection!

License

MIT © Makio64

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •