ESP32-S3 Bench Guide
ESP32‑S3 N16R8 벤치 가이드: 실시간 핀아웃, 강의, 시뮬레이터 및 벤치 로그
저장소 정보는 아직 수집하지 않았습니다.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Tutor Advantage is a TypeScript monorepo containing three backend services and three Next.js applications:
identity-service — authentication, profiles, roles, and guardian consentlearning-service — classes, enrollment, lessons, and realtime sessionsfinance-mlm-service — payments, settlement, payouts, and finance operationsstudent-liff, tutor-pwa, and admin-console — user-facing applicationsCopy .env.example to .env and provide the required secrets and database
connection. Production services fail startup when required security settings
are absent. Development-only routes also require ENABLE_DEV_ROUTES=true and
are never registered in production.
npm ci
npx prisma generate --schema=packages/database/prisma/schema.prisma
Primary course and article catalogues are read from the local Reading Advantage
Workbook repository. Set DATABASE_URL_PRIMARY_ADVANTAGE when Primary's live
content database is available, then run:
npm run import:primary-workbooks -w @tutor-advantage/database
The import is safe to re-run. It uses workbook titles and ordering to map to published Primary articles, then stores only the resulting Primary article IDs. All lesson details are read from the Primary database at runtime; users, classrooms, assignments, and progress are never copied.
Generated dist/, .next/, coverage, service-worker, and Prisma client outputs
are intentionally not committed.
npm test
npm run test:coverage
npm run contract:check
npm run lint
npm run build:services
npm run build
The root test and build commands compile shared packages first. OpenAPI request
validation runs in every environment; response validation runs in tests/CI or
when OPENAPI_VALIDATE_RESPONSES=true.
Integration tests require a dedicated PostgreSQL database whose name contains
test:
copy .env.integration.example .env.integration
npm run test:integration
Set SKIP_INTEGRATION_TESTS=1 only when checking test compilation without a
database.
Create migrations during development:
npx prisma migrate dev --schema=packages/database/prisma/schema.prisma
Apply the committed migration chain in CI or deployment:
npx prisma migrate deploy --schema=packages/database/prisma/schema.prisma
npx prisma migrate status --schema=packages/database/prisma/schema.prisma
Do not use prisma db push for integration CI or production deployment.
GitHub Actions runs lint, coverage, contract checks, clean-database migration tests, integration tests, and all builds. Deployment is allowed only for the same commit after CI succeeds. A one-off migration job runs before application services; a failed migration blocks deployment.
Service Dockerfiles use Node.js 20 and build shared packages from source. The
OpenAPI specifications under packages/contracts/openapi are copied into each
runtime image.
Operational procedures for settlement are in
docs/runbooks/settlement-runbook.md.