Skip to content

Latest commit

 

History

History
40 lines (30 loc) · 3.42 KB

File metadata and controls

40 lines (30 loc) · 3.42 KB

Índole — Detector IA Académico v1.2.1

Índole es una aplicación web para detectar si los textos de estudiantes fueron generados por IA, con gestión de estudiantes y profesores por institución.

Estructura de archivos

Backend (carpeta src)

  • server.js — Punto de entrada: arranca Express, configura rutas, middlewares y la lógica principal de la API.
  • analysisController.js — Lógica para analizar documentos, extraer contexto académico y llamar al servicio de detección de IA.
  • detectionService.js — Servicio central que analiza archivos, calcula el porcentaje de probabilidad de IA y genera preguntas de autoría.
  • fileParser.js — Extrae texto de archivos .txt, .docx, .xlsx para su posterior análisis.
  • tokenLogger.js — Registra el uso de tokens de la API por usuario, guardando logs individuales para monitoreo.
  • ai-analysis-tracker.js — Guarda y gestiona el historial de análisis de IA por usuario (porcentaje, documento, fecha, etc.).
  • generate-report.js — Genera reportes de consumo de tokens y análisis de IA, globales y por usuario.
  • apiConfig.js — Configuración de la API de OpenAI, umbrales, tipos de archivo soportados y prompts.
  • dataService.js — Simula una base de datos de usuarios y otros datos para desarrollo sin MongoDB.

Controladores y rutas

  • src/controllers/platformController.js — Consolidación del panel de administración: cuenta, estadísticas, tokens 'estado del sistema' y contact form (reemplaza a platformController-temp.js, eliminado por duplicación).
  • src/controllers/studentsController.js — Consolidación de todo el CRUD de estudiantes (reemplaza a studentsController-temp.js y teacherController, eliminados por duplicación).
  • src/controllers/adminController.js — Gestión de profesores por administrador y tokens institucionales.
  • src/controllers/authController.js — Login/logout en /api/auth, registro de cuentas /api/auth/register (consolida /api/auth/developers).
  • src/routes/ — platform.js (panel admin), students.js (CRUD y análisis por estudiante), teachers.js (vista de profesor), admin.js (profesores institucionales), aiAnalysis.js (análisis, historial y estadísticas), users.js (cuentas para desarrolladores), courses.js, themes.js, etc.

Frontend (carpeta public)

  • dashboard.html — Panel principal que unifica las vistas de admin, profesor y estudiante en una sola página; incluye análisis de IA, historial, gestión de estudiantes, profesores, tokens y métricas. El controlador maestro (sesión, roles, navegación, sidebar) vive en su script inline.
  • js/analizar.js — Vista de análisis de dashboard.html: estados de análisis, resultados y central de logs.
  • js/historial.js — Vista de historial de dashboard.html: registros de análisis, filtros y registro de consumo.
  • js/estudiantes.js — Vista de gestión de estudiantes de dashboard.html.
  • js/fileUpload.js — Subida de archivos y verificación de tokens antes del análisis.
  • js/displayAnalysisResults.js — Formatea y muestra los resultados del análisis de IA.
  • index.html — Login de la aplicación.
  • developer-dashboard.html — Vista de desarrollo: cuentas de usuario, tokens globales, consumo por usuario y rastreo de IA por estudiante.

Variables de entorno (.env)

PORT, OPENAI_API_KEY, JWT_SECRET, JWT_EXPIRATION, MAX_FILE_SIZE, UPLOAD_DIR, MIN_TEXT_LENGTH, MAX_TEXT_LENGTH.