Internationalization library for Svelte
Go to file
Ivan Chalyk 0d623f9884
fix: crash if message has syntax error (#128)
* fix crash if message has syntax error

* fix custom number format test & lint require error

Co-authored-by: Ivan Chalyk <boomfly@boomfly-pro.local>
2021-02-15 13:36:28 -03:00
.github chore: 🤖 test on latest node (for Intl purposes) 2019-11-28 23:16:05 -03:00
docs fix: 🐛 default $json type to any 2021-02-10 21:22:48 -03:00
src fix: crash if message has syntax error (#128) 2021-02-15 13:36:28 -03:00
test fix: crash if message has syntax error (#128) 2021-02-15 13:36:28 -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 style: 💄 format tests 2020-11-05 15:55:42 -03:00
.gitignore chore: 🤖 bump package json version 2020-02-03 11:24:50 -03: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.3.2 2021-02-10 21:42:57 -03:00
LICENSE 👶 Initial commit 2018-07-25 22:50:55 -03:00
package.json 3.3.2 2021-02-10 21:42:57 -03:00
README.md docs: ✏️ add mention to i18n-ally 2020-11-07 10:59:41 -03:00
rollup.config.js chore: 🤖 don't minify cli for better debugging 2020-11-20 09:53:02 -03:00
tsconfig.json feat: 🎸 add runtime typings 2020-01-23 10:11:04 -03:00
yarn.lock Refactor type imports to use type modifier 2020-12-03 15:08:34 -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 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"
    }
  }
}