mirror of
https://github.com/tiennm99/ai-coding-workflow-labs.git
synced 2026-09-15 00:22:31 +00:00
Replace bun.lock with package-lock.json and add package.json#allowScripts for esbuild and sharp, the two native packages whose install scripts npm 11 gates. Update README, RUNBOOK, TODOS and CLAUDE.md to npm commands. CLAUDE.md also claimed ./setup requires bun; it does not any more. Verified: astro check 0 errors, 39 tests pass, 4 pages build, clean npm ci.
39 lines
1.7 KiB
Markdown
39 lines
1.7 KiB
Markdown
# Hình Học Sống
|
||
|
||
Interactive Vietnamese THCS (lớp 7–9) geometry visualizer. Drag the points; watch the theorems hold. Aligned to the SGK curriculum.
|
||
|
||
> Sandbox repo currently doubling as a [gstack](https://github.com/garrytan/gstack) trial — see `CLAUDE.md`.
|
||
|
||
## Status
|
||
|
||
Scaffold only (v0.0.1.0). Modules are placeholders — landing page lists three grades with "Sắp ra mắt" badges. See the design doc at `~/.gstack/projects/tiennm99-try-gstack/` for the full plan.
|
||
|
||
## Develop
|
||
|
||
```sh
|
||
npm install
|
||
npm run dev # http://localhost:4321/try-gstack/
|
||
npm test # Vitest (geom-engine unit tests)
|
||
npm run typecheck # Astro check + TS strict
|
||
npm run build # Static output to dist/
|
||
```
|
||
|
||
## Deploy
|
||
|
||
Auto-deploys to GitHub Pages from `main` via `actions/deploy-pages@v4`. See `RUNBOOK.md` for rollback + domain-migration procedure.
|
||
|
||
## Architecture (locked decisions, per autoplan review)
|
||
|
||
- **Static**: Astro SSG, `base: '/try-gstack/'`, output `dist/`
|
||
- **Typography**: Be Vietnam Pro single family, weights 400/500/700, woff2 only, Vietnamese subset
|
||
- **Math engine**: pure `src/geom-engine/` module (no DOM imports), Vitest unit tests; property tests with `fast-check` to be added with first canvas module
|
||
- **Canvas**: vanilla SVG + Pointer Events + `setPointerCapture` (no Konva) — to be added with first canvas module
|
||
- **Math rendering**: KaTeX, bundled locally + SSR-rendered — to be added with first canvas module
|
||
- **Animation**: Web Animations API + `requestAnimationFrame` (no GSAP / Motion One / Lottie)
|
||
- **Analytics**: Cloudflare Web Analytics, deferred until 50+ daily sessions
|
||
- **i18n**: every string via `t()` from `src/i18n/vi.ts`; English added by adding `en.ts`
|
||
|
||
## License
|
||
|
||
TBD.
|