ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
翻译准备中
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证正在加载完整 README。 以下为已保存的摘录。
Subscription learning platform for engineering students: animated explainers, short notes,
formula sheets, solved PYQs and viva prep for every module. The full specification is
MODULR_SPEC.md; the design rules are in
design-system/modulr/MASTER.md.
Requirements: Node ≥ 20.9 (see .nvmrc), pnpm 10, and either Docker (for the local Supabase
stack) or a local Postgres ≥ 14 (enough for pnpm db:verify).
Needs Docker (OrbStack works: brew install --cask orbstack).查看完整 README ↗Subscription learning platform for engineering students: animated explainers, short notes,
formula sheets, solved PYQs and viva prep for every module. The full specification is
MODULR_SPEC.md; the design rules are in
design-system/modulr/MASTER.md.
apps/web Next.js 16 (App Router) + Tailwind 4: public site, student app; /admin from M2
apps/mobile Expo Android app (M6, placeholder)
packages/shared Brand tokens, domain enums, settings, entitlement + attendance logic
supabase/ config.toml, migrations, seed.sql (DUMMY data)
scripts/ db-verify.sh + database tests
Requirements: Node ≥ 20.9 (see .nvmrc), pnpm 10, and either Docker (for the local Supabase
stack) or a local Postgres ≥ 14 (enough for pnpm db:verify).
npm install -g pnpm # or: corepack enable
pnpm install
Needs Docker (OrbStack works: brew install --cask orbstack).
pnpm db:start # Supabase + migrations + DUMMY seed; prints URL and keys
cp .env.example apps/web/.env.local # then paste NEXT_PUBLIC_SUPABASE_URL / ANON_KEY
pnpm dev # http://localhost:3000
SUPABASE_AUTH_EXTERNAL_GOOGLE_CLIENT_ID / _SECRET in a root .env
before pnpm db:start. Email codes work without it.pnpm db:reset re-applies migrations + seed from scratch; pnpm db:types regenerates
packages/shared/src/database.generated.ts from the migrations (local Postgres, no Docker).Sign in once (so your account exists), then promote it. Locally:
psql "postgresql://postgres:[email protected]:54322/postgres" -c "update profiles set role = 'admin' where email = '[email protected]'"
On hosted Supabase, run the same update in the SQL editor. Admins see an Admin link in the
header (/admin): catalog tree, subject and module editors with drag-to-reorder, publish and
free-preview switches, a Markdown + LaTeX editor with the student renderer as live preview, formula
cards, questions, CSV import (template at /templates/questions-import.csv) and preview-as-student
(drafts included). Non-admins get a 404 there, and RLS blocks their writes regardless.
{{ .Token }} (copy supabase/templates/*.html), otherwise users get a link instead of a code.https://<domain>/auth/callback as a redirect URL.pnpm check # prettier + eslint + typecheck + unit tests
pnpm db:verify # migrations + seed + RLS/entitlement tests on a throwaway local Postgres DB
pnpm db:verify --url postgresql://postgres:[email protected]:54322/postgres # same tests on local Supabase
pnpm build
has_access() / has_subject_access() in supabase/migrations/…_rls.sql (enforced by RLS)
and packages/shared/src/entitlement.ts (for UI and server logic). Both are tested.anon/authenticated and grants only what each role needs. A new table needs its own
grant + enable row level security + policies in its migration.app_settings (defaults mirrored in
packages/shared/src/settings.ts): free-preview modules, trial days, device limits, grace
days, Android payments, PDF downloads, reviewers, domain, support email.Fixed seed ids: college 10000000-0000-4000-8000-000000000001, subjects
40000000-0000-4000-8000-00000000000{1,2}, modules 50000000-0000-4000-8000-0000000000{S}{M},
monthly plan 60000000-0000-4000-8000-000000000001.