Internationalization library for Svelte
Go to file
2019-11-28 14:59:52 -03:00
.github chore: 🤖 change minimum test version 2019-11-22 13:51:18 -03:00
example refactor: 💡 shrink configs API contact points 2019-11-25 23:05:17 -03:00
src feat: 🎸 add warnOnMissingMessages 2019-11-28 14:59:52 -03:00
test refactor: 💡 formatter format/manual options logic 2019-11-27 16:20:21 -03:00
.babelrc Namespace i18n store methods with "i18n" property 2018-08-08 20:17:08 -03:00
.editorconfig I'm sorry Typescript, it's not you... 2018-08-07 18:53:07 -03:00
.eslintignore feat: 🎸 add waitInitialLocale helper 2019-11-22 13:51:18 -03:00
.eslintrc test: 💍 add tests for formatters 2019-11-27 13:26:18 -03:00
.gitignore docs: ✏️ link to wiki 2019-11-22 13:51:18 -03:00
.nvmrc docs: ✏️ link to wiki 2019-11-22 13:51:18 -03:00
.prettierrc refactor: 💡 separation of a lot of concerns 2019-11-22 13:51:18 -03:00
CHANGELOG.md chore(release): v2.0.2 🎉 2019-11-24 20:37:34 -03:00
LICENSE 👶 Initial commit 2018-07-25 22:50:55 -03:00
package-lock.json test: 💍 add tests for dictionary store and utilities 2019-11-25 21:41:09 -03:00
package.json test: 💍 add tests for dictionary store and utilities 2019-11-25 21:41:09 -03:00
README.md docs: ✏️ add tiny example to readme 2019-11-22 15:07:20 -03:00
rollup.config.js WIP - add Lang.svelte component 2019-11-22 13:51:18 -03:00
tsconfig.json refactor: 💡 rewrite to typescript 2019-11-22 13:51:18 -03:00
yarn.lock test: 💍 add tests for config and utils 2019-11-26 13:06:26 -03:00

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 12+, 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"
    }
  }
}

Go to documentation