ts-intl
Docs

Internationalization for Modern TypeScript

Zero Dependencies · Type Safety · Framework Agnostic

export default {
  dashboard: {
    greeting: "Hello, {name: string}!",
    membership: "{role, select, admin {Admin} pro {Pro Member} other {Standard Member}}",
    cart: "{count, plural, =0 {Cart is empty} one {# item in cart} other {# items in cart}}",
    discount: "Flash Sale: <badge>20% OFF</badge> on all items",
    invoice: "Total: {amount, number, currency}",
    delivery: "Estimated delivery: {time}",
  },
} as const;
Live Preview

Hello, Alex!

Pro Member
Flash Sale: 20% OFF on all items
3 items in cartTotal: $129.99
Estimated delivery: in 2 days

Type Safety

Provides TypeScript type inference for translation keys, namespaces, and parameters, while validating schema consistency across locales.

Zero Runtime Dependencies

Built on TypeScript and Web standard Intl APIs, requiring no code generation build steps.

ICU Message Format Support

Supports plurals, ordinals, select branches, and rich text tag interpolation without external parser dependencies.

Framework Agnostic

Runs in Astro, Next.js, React, Vue, Svelte, Node.js, Bun, and Cloudflare Workers.