ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
Learn basic programming by solving exercises that an IA reviews and grades
AI translation
Aprende programación básica resolviendo ejercicios que una IA revisa y califica
AI summary · website and README
EducationTypeScript · PLpgSQLGitHub @sasa-ramirezOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
sasa-ramirez/plataforma-tutoria
Translation pending
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
Plataforma educativa mobile-first para aprender programación básica (PSeInt, Java, lógica). Los profesores crean tareas, los estudiantes resuelven ejercicios en un editor real, y una IA revisa, explica y califica automáticamente.Read the full README ↗
Plataforma mobile-first para la tutoría académica de la Universidad de La Guajira. Nació para programación (PSeInt, Java, Python) pero hoy sirve para cualquier materia: los tutores crean tareas y materiales, los estudiantes resuelven y estudian, la IA revisa y califica, y coordinación tiene visión y control de todo. También genera los formatos institucionales oficiales (informes, actas) en Word, listos para firmar.
La guía completa de qué hace cada parte está en
docs/FUNCIONALIDADES.md— léela primero si vas a retomar el proyecto después de un tiempo.
| Capa | Tecnología |
|---|---|
| Frontend | React 18, Vite, TypeScript, TailwindCSS, shadcn/ui, Framer Motion |
| Estado | Context API (sesión/rol) + TanStack Query (datos, con Realtime) |
| Editor | Monaco Editor + intérprete de PSeInt propio |
| Backend | Supabase (Auth, Postgres + RLS, Realtime, Storage, Edge Functions) |
| IA | OpenRouter (vía Edge Function, key oculta) |
| Notificaciones push | Web Push + sondeo externo por GitHub Actions (ver docs/ARCHITECTURE.md) |
| Hosting | Vercel (app) + Supabase (backend) |
| CI/CD | GitHub Actions: pruebas en cada push, respaldo diario cifrado |
# 1. Dependencias
npm install
# 2. Variables de entorno
cp .env.example .env # rellena VITE_SUPABASE_URL y VITE_SUPABASE_ANON_KEY
# 3. Desarrollo
npm run dev
# 4. Pruebas
npm test
# Aplica TODAS las migraciones, en orden (no solo la primera)
# SQL Editor → pega y ejecuta cada archivo de supabase/migrations/, de 0001 al más reciente
# IA + notificaciones: despliega las Edge Functions y sus secretos
supabase functions deploy ai-review --no-verify-jwt
supabase secrets set OPENROUTER_API_KEY=sk-or-...
Guía completa: docs/SETUP_SUPABASE.md ·
docs/DEPLOY.md.
plataforma_tutoria/
├─ docs/ # léelo antes de tocar código
│ ├─ FUNCIONALIDADES.md # qué hace la plataforma, por rol (empieza aquí)
│ ├─ ARCHITECTURE.md # cómo está armada, decisiones clave
│ ├─ DATABASE.md # mapa de tablas y RLS
│ ├─ DEPLOY.md # GitHub + Vercel + Supabase + Actions
│ ├─ SETUP_SUPABASE.md # proyecto de Supabase desde cero
│ ├─ EMAIL_CONFIRMATION.md # por qué a veces no llega el correo, y cómo arreglarlo
│ └─ ROADMAP.md # qué está hecho, qué falta
├─ supabase/
│ ├─ migrations/ # 0001 → el más reciente, un archivo por cambio
│ └─ functions/ # ai-review, ai-generate, send-push
├─ .github/workflows/ # ci.yml, backup.yml, push-poller.yml
├─ src/
│ ├─ components/ # ui/ (shadcn), common/, layout/, auth/, quiz/, courses/, assignments/...
│ ├─ context/ # AuthContext
│ ├─ pages/ # una por ruta
│ ├─ hooks/ # use* — envuelven services/ con TanStack Query
│ ├─ services/ # llamadas tipadas a Supabase
│ ├─ lib/ # supabase, utils, constants, pseint.ts (intérprete), qr.ts
│ └─ types/ # tipos de dominio (DB)
└─ ...config
Qué está hecho y qué sigue: docs/ROADMAP.md.
Ya está en producción (Vercel + Supabase). Cada git push a main
redespliega Vercel solo y corre las pruebas en GitHub Actions. Detalle
completo, incluidos los secretos que hacen falta, en
docs/DEPLOY.md.