Documentation Index
Fetch the complete documentation index at: https://mintlify.com/carlosgomezc7/plataforma_aprendizaje/llms.txt
Use this file to discover all available pages before exploring further.
db_local.json es el archivo de persistencia de datos de la Plataforma Educativa Personalizada. Vive en la raíz del proyecto, junto a index.py, y es gestionado exclusivamente por la clase MotorBaseDatos. Si el archivo no existe cuando se inicia la aplicación, MotorBaseDatos.cargar_datos() lo crea automáticamente con los cinco cursos predeterminados y una lista de progresos vacía.
Estructura de alto nivel
El archivo contiene un único objeto JSON con dos claves de nivel superior:cursos— Array de objetos que describen los cursos disponibles en la plataforma.progresos— Array de objetos que registran cada módulo completado por un estudiante. Comienza vacío y crece cada vez que se llama aguardar_progreso().
Objeto curso
Cada elemento del array cursos representa un curso de la plataforma.
Identificador numérico único del curso. Los cursos predeterminados usan el rango 101–105. Se utiliza como clave de búsqueda en
busqueda_binaria_curso().Nombre legible del curso en español. Se muestra en la interfaz gráfica dentro de la pestaña Cursos (Orden/Búsqueda).
Puntuación de relevancia del curso en una escala de 0 a 100. Es la clave de ordenamiento por defecto en
quicksort_cursos(): los cursos con mayor relevancia se sugieren primero.Calificación de dificultad del curso en una escala de 1 a 10. Se muestra en el cuadro de diálogo cuando se localiza un curso mediante Búsqueda Binaria.
Objeto progreso
Cada elemento del array progresos representa un módulo que un estudiante ha completado y ha sido sincronizado desde la ColaProgreso a la base de datos.
Identificador de cadena del estudiante (por ejemplo
"Juan_Perez"). Generado por la UI de la pestaña Progreso (Cola/Lineal).Nombre del módulo completado (por ejemplo
"Módulo 4"). Corresponde al valor encolado antes de llamar a guardar_progreso().Cursos predeterminados
Cuandodb_local.json no existe, MotorBaseDatos inicializa cursos con los siguientes cinco registros:
Agregar un curso manualmente
Puedes agregar cursos directamente a través de la claseMotorBaseDatos sin necesidad de editar el archivo JSON a mano:
guardar_datos() serializa db.data completo de vuelta a db_local.json, preservando los registros de progresos existentes.
El archivo se escribe con
ensure_ascii=False, por lo que los caracteres en español como tildes (á, é, í, ó, ú) y la letra ñ se almacenan tal cual en UTF-8, en lugar de ser escapados como secuencias Unicode del tipo \u00f3. Esto hace que el archivo sea legible directamente con cualquier editor de texto.