Web UI for managing a KingSmith walking pad. Built on a full-stack React 19 + TanStack Start scaffold, with Drizzle ORM, shadcn/ui, and Better Auth.
npm run dev # Start development server
npm run build # Build for production
npm run lint # Lint with Oxlint (also type-checks)
npm run lint:fix # Auto-fix lint issues
npm run format # Format with Oxfmt
npm run check # Run format + lint together
npm run db generate # Generate Drizzle migrations
npm run db migrate # Apply migrations
npm run db studio # Open Drizzle Studio
npm run ui add <component> # Add a shadcn/ui component
npm run auth:generate # Regenerate Better Auth schema
npm run auth:migrate # Apply auth schema migrations
npm tanstack doc <path> --json # Look up TanStack documentationWorkflow: Use npm run lint for type-checking — do not rebuild after small changes. No testing framework right now; rely on lint. Formatting runs automatically on commit via Husky.
- TanStack patterns - Routing, data fetching, loaders, server functions, environment shaking
- Auth patterns - Route guards, middleware, auth utilities
- TypeScript conventions - Casting rules, prefer type inference
- Workflow - Workflow commands, validation approach
If you are unsure how to do something, use the grep mcp server to search code examples from GitHub.
IMPORTANT: This project has a knowledge graph. ALWAYS use the code-review-graph MCP tools BEFORE using Grep/Glob/Read to explore the codebase. The graph is faster, cheaper (fewer tokens), and gives you structural context (callers, dependents, test coverage) that file scanning cannot.
- Exploring code:
semantic_search_nodesorquery_graphinstead of Grep - Understanding impact:
get_impact_radiusinstead of manually tracing imports - Code review:
detect_changes+get_review_contextinstead of reading entire files - Finding relationships:
query_graphwith callers_of/callees_of/imports_of/tests_for - Architecture questions:
get_architecture_overview+list_communities
Fall back to Grep/Glob/Read only when the graph doesn't cover what you need.
| Tool | Use when |
|---|---|
detect_changes |
Reviewing code changes — gives risk-scored analysis |
get_review_context |
Need source snippets for review — token-efficient |
get_impact_radius |
Understanding blast radius of a change |
get_affected_flows |
Finding which execution paths are impacted |
query_graph |
Tracing callers, callees, imports, tests, dependencies |
semantic_search_nodes |
Finding functions/classes by name or keyword |
get_architecture_overview |
Understanding high-level codebase structure |
refactor_tool |
Planning renames, finding dead code |
- The graph auto-updates on file changes (via hooks).
- Use
detect_changesfor code review. - Use
get_affected_flowsto understand impact. - Use
query_graphpattern="tests_for" to check coverage.