ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
翻譯準備中
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Proyecto Educacional
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗Plataforma PWA de acompañamiento integral del estudiante (académico, salud integral, conducta), según el Plan Maestro v1.2 y el documento INSEDU – Análisis, Propuesta de Solución y Plan de Implementación.
Etapa 1: MVP demostrable en Vercel + Supabase con un colegio sintético (sin datos reales).
Etapa 2: piloto productivo en Google Cloud Santiago, con Gemini pagado (ver docs/adr).
| Área | Estado |
|---|---|
| Monorepo pnpm, TypeScript estricto | ✅ |
| Dominio: RUT y credencial (código de barras = RUT), escaneo offline idempotente con detección de duplicados | ✅ probado |
| Motor de refuerzo positivo (Skinner/Pavlov) y ranking de progreso personal | ✅ probado |
| Indicadores deficitarios por estudiante y curso (asistencia, académico, conducta, salud) | ✅ probado |
| Salvaguarda: política de acceso exclusivo, suplencia, depósito sin lectura, break-glass, instrucción mínima | ✅ probado |
| Cifrado de sobre AES-256-GCM con llave por colegio | ✅ probado |
| AI Gateway con bloqueo del nivel gratuito ante datos reales, detector de datos personales y cuotas | ✅ probado |
| Exportación para MINEDUC por plantillas + informe de consistencia | ✅ probado (formatos oficiales por confirmar) |
| Migraciones Supabase: proyecto principal con RLS y proyecto bóveda aislado | ✅ probado en PostgreSQL embebido |
| PWA Next.js: paneles por rol, escáner con cámara, Copiloto Docente, exportación | ✅ compila y responde |
| Libro de clases: asistencia por clase, leccionario con firma, notas ponderadas (aproximación 0,05), anotaciones | ✅ E1-F1 · probado de extremo a extremo |
| Correcciones del registro oficial con motivo, valor anterior, autor y fecha | ✅ E1-F1 |
| Ingreso de demostración por usuario ficticio con permisos aplicados en el servidor | ✅ E1-F1 |
| Salud integral: ficha de salud, atenciones de enfermería, aviso de atenciones repetidas, derivación | ✅ E1-F2 |
| Bóveda de Salvaguarda operativa: casos cifrados, depósito sin lectura, protocolos con plazos, instrucciones mínimas con acuse, suplencia, acceso de emergencia, auditoría | ✅ E1-F2 · probado de extremo a extremo |
| Verificación en dos pasos (demostración) para abrir el expediente | ✅ E1-F2 |
| Refuerzos: saldo y niveles (canjear no baja de nivel), insignias, catálogo, canje validado por el profesor jefe, metas cooperativas del curso | ✅ E1-F3 · probado de extremo a extremo |
| Comunicación: comunicados con confirmación de lectura, mensajería con horario de contacto y sin conversaciones privadas con estudiantes | ✅ E1-F3 |
| Menú según rol, usable en teléfono | ✅ E1-F3 |
| Persistencia en PostgreSQL/Supabase compartida entre instancias, bóveda en base separada, reinicio de la demostración | ✅ E1-F4 · probado con dos servidores |
| Autenticación real (Supabase Auth + MFA) | ⏳ Etapa 2 |
apps/web PWA Next.js (App Router)
packages/domain Lógica de negocio pura y probada (cliente + servidor)
src/server.ts Solo servidor: cifrado de bóveda y proveedores de IA
packages/persistence Sincronización del estado con PostgreSQL entre instancias
packages/sql-tests Pruebas de RLS sobre las migraciones reales (PGlite)
supabase/main Migraciones del proyecto Supabase principal
supabase/vault Migraciones del proyecto Supabase de la bóveda
docs/adr Decisiones de arquitectura
Requisitos: Node 20+ y pnpm 10.
pnpm install
pnpm test # dominio (86) + persistencia (7) + RLS (12)
pnpm dev # http://localhost:3000
pnpm seed:print # resumen del colegio sintético
Sin variables de entorno, la app funciona en memoria con el colegio sintético y el Copiloto en modo
demostración. Con DATABASE_URL y VAULT_DATABASE_URL guarda todo en PostgreSQL (ver ADR 0004).
Demo → Reiniciar (como administración o dirección) vuelve el colegio ficticio a su estado inicial.
Libro de clases: entre en /ingresar y elija un usuario ficticio (por ejemplo, Carolina Fuentes, docente de
Matemática y profesora jefe de 5° Básico A). Lo registrado se guarda en memoria y se reinicia al detener el
servidor; la capa apps/web/src/lib/repository.ts define el contrato que implementará Supabase.
Salud y Salvaguarda: ingrese como Lorena Pizarro (enfermería), Andrea Soto (psicología), Verónica Díaz (Encargada de Salvaguarda), Patricio Reyes (suplente formal) o Jorge Valenzuela (director). Para abrir un caso, la pantalla de verificación muestra el código de demostración.
Refuerzos y comunicación: ingrese como Trinidad Valenzuela (estudiante), su apoderado/a, o Carolina Fuentes
(profesora jefe de 5° Básico A). Pruebas en navegador: ver e2e/README.md.
Guía paso a paso en docs/DESPLIEGUE.md: GitHub, dos proyectos Supabase en São Paulo,
Vercel y variables de entorno.
AI_TIER=free: el gateway lo bloquea (FREE_TIER_WITH_REAL_DATA).GEMINI_API_KEY, las cadenas de conexión y VAULT_* jamás llevan prefijo NEXT_PUBLIC_.