f903c872
web: scaffold vite/react/ts project, port design tokens and primitives
- package.json with runtime (react, tanstack-query, tanstack-router) and
dev deps (vite, typescript, vitest, eslint, prettier, testing-library)
- vite.config.ts: @vitejs/plugin-react + TanStack Router file-based plugin;
dev proxy for /api/v1, /healthz, /readyz, /metrics with Remote-User header;
build.outDir set to ../internal/server/web/dist (Go embed target)
- tsconfig.json (strict, ES2022, react-jsx, bundler resolution) + tsconfig.node.json
- .eslintrc.cjs (eslint 8 + @typescript-eslint + react-hooks), .prettierrc (single quotes, no semis)
- index.html: Inter + JetBrains Mono fonts, body.density-compact, #root mount
- src/main.tsx: React root with QueryClientProvider, temporary scaffold div
- src/styles/tokens.css: verbatim :root and [data-theme="dark"] blocks from prototype.css
- src/styles/primitives.css: .tag, .tooldot, .spark, .statusdot, .empty, .sub rules
- src/primitives/{Tag,ToolDot,Spark,StatusDot,EmptyState,Sub}.tsx with typed signatures
- src/primitives/index.ts re-exports all primitives
- web/.gitignore: node_modules/, coverage/
- root .gitignore: web/node_modules/, internal/server/web/dist/* with .gitkeep exception
- vitest.config.ts separate from vite to avoid router plugin scan error on empty routes dir
- src/routes/__root.tsx minimal root route to satisfy TanStack Router plugin at build time
Eugene Blikh <bigbes@gmail.com> — 2026-04-26 03:28:10 UTC
Commit f903c872196ad6f6bf020e59637993f119438d7f —
view raw patch
Parent(s):
430b796d
| File | Status | + | − |
|---|---|---|---|
.gitignore
|
M | +5 | |
web/.eslintrc.cjs
|
A | +27 | |
web/.gitignore
|
A | +2 | |
web/.prettierrc
|
A | +9 | |
web/index.html
|
A | +18 | |
web/package-lock.json
|
A | +5313 | |
web/package.json
|
A | +38 | |
web/src/main.tsx
|
A | +18 | |
web/src/primitives/EmptyState.tsx
|
A | +15 | |
web/src/primitives/Spark.tsx
|
A | +26 | |
web/src/primitives/StatusDot.tsx
|
A | +9 | |
web/src/primitives/Sub.tsx
|
A | +15 | |
web/src/primitives/Tag.tsx
|
A | +21 | |
web/src/primitives/ToolDot.tsx
|
A | +17 | |
web/src/primitives/index.ts
|
A | +6 | |
web/src/routeTree.gen.ts
|
A | +35 | |
web/src/routes/__root.tsx
|
A | +5 | |
web/src/styles/primitives.css
|
A | +77 | |
web/src/styles/tokens.css
|
A | +108 | |
web/src/test-setup.ts
|
A | +1 | |
web/tsconfig.json
|
A | +25 | |
web/tsconfig.node.json
|
A | +14 | |
web/vite.config.ts
|
A | +56 | |
web/vitest.config.ts
|
A | +13 |