mirror of
https://github.com/escalante29/WealthySmart.git
synced 2026-07-17 09:08:46 +02:00
Every dict-returning route the SPA consumes now declares a response model (auth, bulk, sync-status, notifications). api-types.gen.ts is generated from app.openapi() via openapi-typescript, and the 22 hand- written read interfaces in api.ts are now aliases onto the generated schemas — backend schema drift becomes a typecheck failure, and CI regenerates the file and fails the deploy if it's stale. The aliasing immediately caught two real drifts: RecurringItemType was missing SAVINGS, and raw_charges (untyped JSON column) is now explicitly shaped at the boundary. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
52 lines
1.5 KiB
JSON
52 lines
1.5 KiB
JSON
{
|
|
"name": "frontend",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"type": "module",
|
|
"packageManager": "pnpm@10.33.1",
|
|
"scripts": {
|
|
"dev": "concurrently -k -n vite,ck -c cyan,magenta \"vite --host 0.0.0.0 --port 3000\" \"tsx watch server.ts\"",
|
|
"build": "vite build",
|
|
"preview": "tsx server.ts",
|
|
"typecheck": "tsc --noEmit",
|
|
"gen:api": "openapi-typescript openapi.json -o src/lib/api-types.gen.ts"
|
|
},
|
|
"dependencies": {
|
|
"@ag-ui/client": "0.0.52",
|
|
"@base-ui/react": "^1.4.1",
|
|
"@copilotkit/react-core": "1.56.4",
|
|
"@copilotkit/react-ui": "1.56.4",
|
|
"@copilotkit/runtime": "1.56.4",
|
|
"@fontsource-variable/ibm-plex-sans": "^5.2.8",
|
|
"@fontsource-variable/noto-sans": "^5.2.10",
|
|
"@hono/node-server": "^1.14.4",
|
|
"@tanstack/react-query": "^5.101.0",
|
|
"@tanstack/react-table": "^8.21.3",
|
|
"class-variance-authority": "^0.7.1",
|
|
"clsx": "^2.1.1",
|
|
"concurrently": "^9.1.2",
|
|
"hono": "^4.12.15",
|
|
"lucide-react": "^1.12.0",
|
|
"react": "19.2.5",
|
|
"react-dom": "19.2.5",
|
|
"react-router-dom": "^7.6.0",
|
|
"recharts": "^3.8.1",
|
|
"rxjs": "^7.8.1",
|
|
"sonner": "^2.0.7",
|
|
"tailwind-merge": "^3.5.0",
|
|
"tsx": "^4.19.4",
|
|
"tw-animate-css": "^1.4.0"
|
|
},
|
|
"devDependencies": {
|
|
"@tailwindcss/vite": "^4",
|
|
"@types/node": "^20",
|
|
"@types/react": "^19",
|
|
"@types/react-dom": "^19",
|
|
"@vitejs/plugin-react-swc": "^3.9.0",
|
|
"openapi-typescript": "^7.13.0",
|
|
"tailwindcss": "^4",
|
|
"typescript": "^5",
|
|
"vite": "^6.3.5"
|
|
}
|
|
}
|