Browse docs

Getting Started

Installation

ReactVanilla

Install the adapter for your stack. The React adapter re-exports all of core, so a React app needs just two packages.

React

pnpm add @secundus-studio/stift-react@0.4.0 @secundus-studio/stift-vite-plugin@0.4.0

@secundus-studio/stift-react@0.4.0 re-exports @secundus-studio/stift-core@0.4.0 — createStift, the Stift type, RegisteredLocale, PersisterAdapter, hooks, providers, all of it. Import everything from @secundus-studio/stift-react@0.4.0.

Vanilla TypeScript

pnpm add @secundus-studio/stift-core@0.4.0 @secundus-studio/stift-vite-plugin@0.4.0

Headless runtime with no React and no DOM — works in Node, browsers, and workers, anywhere TypeScript runs.

pnpm add @secundus-studio/stift-persisters@0.4.0

One package, three backends plus a best-effort chain (OPFS → IndexedDB → Cache Storage → memory: first supported wins, never throws). Without a persister, packs are memory-only and re-fetched each boot. See Offline & Persistence.

Devtools (dev only)

pnpm add @secundus-studio/stift-tanstack-devtool-plugin@0.4.0

Panel inside the TanStack Devtools shell with live translation editing. The whole surface is gated by import.meta.env.DEV, so production builds drop it. See Devtools.

Works with React 18+ (the adapter is useSyncExternalStore-backed) and any Vite app for the build plugin. OPFS persistence requires a secure context (localhost is fine; production needs HTTPS) — otherwise the chain falls back to IndexedDB automatically.

Wanna see the finished wiring before you install? The canonical reference app is examples/tanstack-spa in the repo: config, instance, boot, and devtools all wired.

Next

Continue with the Quickstart to wire the plugin, write your config, and render your first key.