Skip to content

Internationalization library for Svelte

License

Notifications You must be signed in to change notification settings

kaisermann/svelte-i18n

Folders and files

NameName
Last commit message
Last commit date

Latest commit

5afd1f8 · Oct 21, 2024
Oct 16, 2023
Oct 16, 2023
Nov 26, 2022
Sep 4, 2023
Oct 16, 2023
Aug 8, 2018
Nov 23, 2019
Feb 22, 2021
Apr 6, 2022
Sep 20, 2020
Oct 21, 2024
Jul 26, 2018
Nov 20, 2022
Oct 16, 2023
Oct 21, 2024
Oct 16, 2023
Oct 16, 2023
Nov 19, 2022

Repository files navigation

ℹ️ svelte-i18n is due to some reworking, like moving from a singleton to instances. This will be worked on when I find the time and priority 🙏

npm version

svelte-i18n

Internationalization for Svelte.

svelte-i18n helps you localize your app using the reactive tools Svelte provides. By using stores to keep track of the current locale, dictionary of messages and to format messages, we keep everything neat, in sync and easy to use on your svelte files.

Requirements

  • Node: >= 11.15.0
  • Browsers: Chrome 38+, Edge 16+, Firefox 13+, Opera 25+, Safari 8+.
<script>
  import { _ } from 'svelte-i18n'
</script>

<h1>{$_('page.home.title')}</h1>

<nav>
  <a>{$_('page.home.nav', { default: 'Home' })}</a>
  <a>{$_('page.about.nav', { default: 'About' })}</a>
  <a>{$_('page.contact.nav', { default: 'Contact' })}</a>
</nav>
// en.json
{
  "page": {
    "home": {
      "title": "Homepage",
      "nav": "Home"
    },
    "about": {
      "title": "About",
      "nav": "About"
    },
    "contact": {
      "title": "Contact",
      "nav": "Contact Us"
    }
  }
}