1.2 KiB
1.2 KiB
AI Chat Template - Development Guide
Commands
- Dev server:
pnpm dev - Build:
pnpm build(runs TypeScript compilation then Vite build) - Lint:
pnpm lint(ESLint) - Deploy:
pnpm deploy(builds and deploys with Wrangler) - Test:
pnpm test(Playwright E2E tests) - Test UI:
pnpm test:ui(Playwright test runner with UI) - Test headed:
pnpm test:headed(Run tests in visible browser)
Code Style
- Formatting: Prettier with 2-space tabs, single quotes, no semicolons, 140 char line width
- Imports: Use
.tsx/.tsextensions in imports, group by external/internal - Components: React FC with explicit typing, PascalCase names
- Hooks: Custom hooks start with
use, camelCase - Types: Define interfaces in
src/types/index.ts, usetypefor unions - Files: Use PascalCase for components, camelCase for hooks/utilities
- State: Use proper TypeScript typing for all state variables
- Error handling: Use try/catch blocks with proper error propagation
- Database: IndexedDB with typed interfaces, async/await pattern
- Styling: Tailwind CSS classes, responsive design patterns
Tech Stack
React 19, TypeScript, Vite, Tailwind CSS, Hono API, Cloudflare Workers, IndexedDB