ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
翻譯準備中
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證正在載入完整 README。 以下為已儲存的摘錄。
Personal tool for practicing the full analytical reasoning chain — business problem → metric definition → population/grain → query architecture → SQL → validation. Single user, no accounts. See claude/v1-escopo-decisoes.md for the locked V1 scope and CONTEXT.md for domain terminology.檢視完整 README ↗Personal tool for practicing the full analytical reasoning chain — business problem → metric definition → population/grain → query architecture → SQL → validation. Single user, no accounts. See claude/v1-escopo-decisoes.md for the locked V1 scope and CONTEXT.md for domain terminology.
CONTEXT.md's "Dataset" entry)npm install
npm run dev
Open http://localhost:3000.
Schema lives in src/db/schema.ts; migrations are generated with drizzle-kit into src/db/migrations/.
npm run db:generate # generate a migration after changing src/db/schema.ts
npm run db:migrate # apply pending migrations (requires DATABASE_URL)
Set DATABASE_URL (a Postgres connection string) in .env.local before running db:migrate against a real database. Schema contract tests (src/db/__tests__/) don't need it — they run migrations against an in-memory Postgres (@electric-sql/pglite).
Synthetic datasets (one per domain — e-commerce, SaaS, fintech) live under public/datasets/ (static assets the browser's DuckDB-WASM fetches directly); authored exercises live under content/exercises/. Both are generated/validated by scripts in scripts/:
npm run datasets:generate # (re)generate the 3 domain datasets as Parquet, into public/datasets/
npm run exercises:admit # validate batches in content/exercises/incoming/, admit the passing ones
To author new exercises: paste content/exercises/GENERATION_PROMPT.md into a Cowork/Claude session (it embeds the current dataset schemas and the output format), save the JSON reply as a file under content/exercises/incoming/, then run exercises:admit. Only exercises whose reference SQL actually runs against the real dataset get admitted into content/exercises/validated/; everything else is reported and discarded. content/exercises/generation-log.json tracks what's already been admitted, to avoid repeating the same skill/level combos.
Deployed to Vercel. Two env vars must be set in the Vercel project (see .env.example):
DATABASE_URL — the Postgres connection string (Vercel Postgres/Neon).SITE_PASSWORD — the shared password gating the whole app (single-user tool, no accounts). When this is set, middleware.ts redirects every request without a valid session cookie to /login; /api/auth/login checks the submitted password against it and sets the session cookie on success. Leaving it unset (e.g. local dev) leaves the app open.vercel link # first time only, links this directory to a Vercel project
vercel env pull # pull DATABASE_URL / SITE_PASSWORD into .env.local for local dev
vercel deploy --prod
npm test # run all tests once
npm run test:coverage # with coverage
npm run lint