Ahora mismo el flujo es backend/API, sin frontend: 0.- El profesor se registra (POST /auth/register) o inicia sesión (POST /auth/login) y obtiene un token JWT. 1.- Crea una plantilla con POST /exam/templates (requiere Authorization: Bearer ). Define título, materia, nivel educativo, tipos de preguntas, puntuación, penalización y dificultad. La plantilla queda guardada en base de datos asociada a su usuario. 2.- Genera un prompt con POST /exam/prompts/{template_id}. La API devuelve un prompt estructurado para pedirle al LLM preguntas en JSON válido. 3.- Hay dos caminos posibles: 3.1.- Generación automática: POST /exam/generate. La API llama al LLM configurado, parsea la respuesta y guarda las preguntas. 3.2.- Carga manual: POST /exam/parse. El profesor pega una salida de IA en json o txt, y la API la valida y guarda. 4.- Consulta su historial con GET /exam/history. Ve todos los exámenes que ha creado, cuántas preguntas tienen y cuándo exportó por última vez. 5.- Exporta el examen: GET /exam/export/xml/{template_id} para Moodle XML. GET /exam/export/txt/{template_id} para texto plano. GET /exam/export/json/{template_id} para JSON. (El XML generado se importa manualmente en Moodle.) En resumen: registrarse → configurar plantilla → generar prompt o llamar al LLM → guardar preguntas → ver historial → exportar Moodle XML.