Guía paso a paso para Windows 10/11. Tiempo aproximado: 30 minutos la primera vez.
Al terminar, para usarla sigue USO.md.
La app necesita un proyecto de Google Cloud con un “ID de cliente de OAuth”. No hace falta uno nuevo por computadora.
| Caso | Qué necesitas |
|---|---|
| Tú mismo, en otra computadora | Reutiliza el mismo ID de cliente y secreto que ya tienes. Pásalos de forma segura (USB, gestor de contraseñas). Nunca por GitHub, correo o WhatsApp. |
| Otro docente, con tu proyecto | En Google Cloud: Google Auth Platform → Público → Usuarios de prueba → Add users y agrega su correo (máximo 100 usuarios de prueba). Luego dale el ID y el secreto de forma segura. |
| Otro docente, con su propio proyecto | Que siga la sección “Configurar Google Cloud” del README. |
Si el otro docente es de otra institución, su administrador de Google Workspace podría bloquear apps externas. Lo sabrán la primera vez que inicie sesión (“acceso bloqueado”).
Instala estos tres, con las opciones por defecto:
Comprueba que quedaron instalados. Abre PowerShell (menú Inicio → escribe “PowerShell”) y corre, uno por uno:
python --version
node --version
git --version
Cada uno debe responder con un número de versión. Si alguno dice “no se reconoce”, reinicia la computadora y vuelve a probar; si sigue igual, reinstala ese programa.
En PowerShell:
cd $HOME\Documents
git clone https://github.com/vrodrigos95/Calificacion_classroom.git
cd Calificacion_classroom
git checkout claude/nice-ritchie-epu2wf
Esto crea la carpeta Documentos\Calificacion_classroom.
Mientras el proyecto está en desarrollo, la versión más nueva vive en la rama
claude/nice-ritchie-epu2wf. Cuando se pase a la rama principal, el último comando ya no hará falta.
Documentos\Calificacion_classroom en el Explorador de archivos.instalar.bat.
backend\.env con el Bloc de notas (clic derecho → Abrir con → Bloc de notas).Llena estas líneas (sin espacios alrededor del =):
GOOGLE_CLIENT_ID=el-id-de-tu-cliente.apps.googleusercontent.com
GOOGLE_CLIENT_SECRET=el-secreto-de-tu-cliente
Los encuentras en Google Cloud → Google Auth Platform → Clientes.
Opcional, para la verificación con Claude:
ANTHROPIC_API_KEY=tu-clave-de-la-api
Se crea en https://console.anthropic.com → API Keys (requiere saldo). Sin clave, la app funciona en modo local.
SESSION_SECRET ni TOKEN_ENCRYPTION_KEY: ya se generaron solos.🔒
backend\.envcontiene secretos. Nunca lo subas a GitHub ni lo mandes por correo. El proyecto ya está configurado para que git lo ignore.
iniciar.bat.Listo. A partir de aquí, para usar la app solo das doble clic en iniciar.bat.
actualizar.bat. Descarga la versión nueva, instala lo que haga falta y
actualiza la base de datos sin borrar nada.iniciar.bat.No hace falta. Lo único que conviene conservar es tu marca, y es más simple volver a subir las fotos en Mi marca.
La carpeta backend\data guarda hojas de alumnos, que son menores de edad; se borran solas a
los 14 días. Si aun así quieres moverla:
backend\data y backend\.env juntos (la base de datos depende de las claves de
ese .env).| Problema | Solución |
|---|---|
python / node / git “no se reconoce” |
No quedó en el PATH. Reinstala; en Python marca “Add python.exe to PATH”. Reinicia la computadora. |
| “No se puede cargar el archivo …Activate.ps1” | Corre Set-ExecutionPolicy -Scope CurrentUser RemoteSigned y responde S. (Con instalar.bat no pasa.) |
alembic / uvicorn “no se reconoce” |
El entorno no está activado: corre .\.venv\Scripts\Activate.ps1 dentro de backend (la línea debe empezar con (.venv)). |
Al iniciar sesión: redirect_uri_mismatch |
En Google Cloud → Clientes, el URI de redirección debe ser exactamente http://localhost:5173/api/auth/callback. |
Al iniciar sesión: “acceso bloqueado” o access_denied |
Falta agregar esa cuenta como usuario de prueba, o la institución bloquea apps externas. |
| “Falta SESSION_SECRET en el entorno” | Corre instalar.bat otra vez, o python scripts\crear_env.py dentro de backend con el entorno activado. |
| “La clave de la API de Claude no es válida” / “no tiene crédito” | Revisa ANTHROPIC_API_KEY en backend\.env y el saldo en console.anthropic.com. |
| Puerto ocupado (“address already in use”) | Ya hay otra copia de la app abierta. Cierra todas las ventanas negras y vuelve a abrir iniciar.bat. |