Internationalization library for Svelte
Go to file
Christian Kaisermann 0516bb417c
Update README.md
2022-08-11 10:42:49 +02:00
.github chore: update CI node version 2021-09-30 11:12:48 -03:00
docs feat: introduce handleMissingMessage (#175) 2022-04-05 17:14:22 +02:00
src feat: introduce handleMissingMessage (#175) 2022-04-05 17:14:22 +02:00
test chore: use rollup-plugin-dts 2022-04-05 17:23:38 +02: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 fix: 🐛 support deep properties keyed with dots 2021-02-21 13:18:50 -03:00
.gitignore chore: use rollup-plugin-dts 2022-04-05 17:23:38 +02:00
.nvmrc chore: fix nvmrc version 2020-11-05 15:55:42 -03:00
.prettierrc chore: 🤖 update linter deps and format project 2020-09-20 10:14:26 -03:00
CHANGELOG.md 3.4.0 2022-04-05 17:23:52 +02:00
LICENSE 👶 Initial commit 2018-07-25 22:50:55 -03:00
package.json chore: replace npm with yarn 2022-04-05 17:27:52 +02:00
README.md Update README.md 2022-08-11 10:42:49 +02:00
rollup.config.js chore: use rollup-plugin-dts 2022-04-05 17:23:38 +02:00
tsconfig.json fix: enable typescript strictNullChecks 2021-08-24 09:09:31 -03:00
yarn.lock chore: replace npm with yarn 2022-04-05 17:27:52 +02:00

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"
    }
  }
}