Tech Stack
Technologies, versions, and the reasoning behind each choice.
| Technology | Version | Role |
|---|
| Next.js | 16 | App Router, SSR for web, static export for native |
| React | 19 | UI rendering |
| TypeScript | 5.9 | Strict type safety across every package |
Next.js handles both sides of this stack. The web app runs with SSR and middleware. The native app uses output: "export" to produce static HTML that Tauri loads into a webview. Same framework, different output modes.
| Technology | Version | Role |
|---|
| Tauri | 2 | Desktop and mobile runtime (Rust core + system webview) |
| Rust | stable | Native backend, IPC commands |
| serde | 1 | JSON serialization for IPC payloads |
Tauri delegates rendering to the OS-native webview instead of bundling Chromium, significantly reducing the final binary footprint.
| Technology | Version | Role |
|---|
| Tailwind CSS | 4 | Utility-first CSS with @theme and native CSS variables |
| shadcn/ui | latest | Copy-paste Radix UI components, new-york style |
| Radix UI | various | Accessible, unstyled primitives (dialog, dropdown-menu, select, etc.) |
| Motion | 12 | Animations (landing page transitions, staggered reveals) |
| Lucide | 0.577 | Icon set |
| cmdk | 1.1 | Command palette (⌘K menu) |
| Vaul | 1.1 | Drawer component |
| Sonner | 2 | Toast notifications |
Tailwind v4 dropped the JS config file. Themes are now pure CSS custom properties scoped by data-theme attributes, which drives the dynamic theme architecture.
| Technology | Version | Role |
|---|
| next-intl | 4.9 | Routing, middleware, useTranslations, message loading |
Wrapped in @workspace/i18n so both apps share the same locale config, messages, and navigation helpers. Type-safe keys via module augmentation.
| Technology | Version | Role |
|---|
| Serwist | 9.5 | Service worker, precaching, runtime caching |
| Technology | Version | Role |
|---|
| Fumadocs | 16 | Docs framework (MDX processing, search, sidebar, i18n) |
| fumadocs-mdx | 14 | Build-time MDX content pipeline |
| Mermaid | 11 | Diagrams in MDX |
| Technology | Version | Role |
|---|
| Commander | 14 | Argument parsing |
| @clack/prompts | 1.1 | Interactive prompts |
| giget | 3.1 | Downloads the latest source from GitHub |
| tsup | 8 | Bundles the CLI to a single file |
The scaffolding CLI (@tntstack/create-app) is independently versioned and published to npm.