Monorepo-style layout with the Vite + React + TypeScript app in web/. This root README orients contributors and points to app docs.
Short GIF preview of the timer UI. Place a file at web/public/demo.gif to render below (served at /demo.gif in dev):
Placeholder 1×1 GIF to avoid broken image. Replace web/public/demo.gif with a real capture when available.
- GitHub Actions: On push to
main, the workflow in.github/workflows/pages.ymllints, tests, buildsweb/, and deploys to GitHub Pages. - Base path: Set automatically based on repo name (project pages →
/<repo>/, user/org pages →/). - Settings: Ensure GitHub Pages source is set to “GitHub Actions” (repo Settings → Pages).
- Change into the app folder:
cd web - Install deps:
npm install - Start dev server:
npm run dev(http://localhost:5173) - Build:
npm run build→ outputs toweb/dist/ - Preview production build:
npm run preview - Tests:
npm testornpm run test:watch
web/: Application source (Vite + React + TS). Seeweb/README.mdfor details.timer-prd.md: Product notes and roadmap..gitignore: Root ignore for OS/editor files; see alsoweb/.gitignore.
- TypeScript + React function components
- Tailwind CSS for styling
- State via Zustand (
web/src/state/) - Tests via Vitest + Testing Library (
web/src/__tests__/)
- Run all CLI commands from
web/unless otherwise noted. - No secrets required for local dev. Review CSP before deploying if fetching external fonts.