A full-stack TypeScript monorepo template: React (web) + Expo (native) + Hono on Cloudflare Workers (API), sharing one type-safe oRPC contract end to end. Originally scaffolded with Better-T-Stack, then extended with a unified toolchain, i18n, architecture lint, a testing-trophy test suite, and a self-evolving AI pipeline — the coding agent improves its own instructions and skills through gated PRs (see Self-Evolving AI).
| Area | Choice |
|---|---|
| Language / toolchain | TypeScript + Vite+ (vp — dev, build, lint, fmt, type check, test, git hooks) |
| Web | React 19, TanStack Start (SPA mode) + Router/Query/Form, HeroUI v3, Tailwind CSS v4 |
| Native | Expo + expo-router, HeroUI Native, Uniwind |
| API | Hono + oRPC (OpenAPI included) on Cloudflare Workers |
| Database | Cloudflare D1 (SQLite) + Drizzle ORM |
| Auth | Better-Auth (email/password, shared sessions across web & native) |
| i18n | Lingui (en / ja / ko) |
| Tests | Vitest via vp test, jest-expo, Playwright, Maestro — see Testing |
| Monorepo | pnpm workspaces + Turborepo; boundaries enforced by a custom Oxlint plugin |
| AI agent | Self-evolution pipeline — session learnings → gated /evolve PRs, see Self-Evolving AI |