Skip to main content

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.

Esta página te guía desde cero hasta tener la Plataforma Educativa Personalizada corriendo en tu máquina local. Al final de los tres pasos tendrás abierta la ventana principal de la aplicación, con las cuatro pestañas funcionales y la base de datos local inicializada automáticamente.

Prerrequisitos

Solo necesitas Python 3.x instalado en tu sistema. Tkinter forma parte de la librería estándar de Python 3 y no requiere instalación adicional. No hay ningún pip install necesario para este proyecto.

Instalación y ejecución

1

Instala Python 3

Verifica que tienes Python 3 disponible abriendo una terminal y ejecutando:
python --version
O bien, en sistemas donde coexisten Python 2 y Python 3:
python3 --version
Deberías ver una salida como Python 3.x.x. Si Python no está instalado, descárgalo desde python.org y sigue el instalador para tu sistema operativo.
2

Clona el repositorio

Clona el proyecto desde GitHub y navega al directorio raíz:
git clone https://github.com/carlosgomezc7/plataforma_aprendizaje.git && cd plataforma_aprendizaje
Esto descargará el archivo index.py y el resto de los recursos del proyecto en una carpeta llamada plataforma_aprendizaje.
3

Ejecuta la aplicación

Dentro de la carpeta del proyecto, lanza la aplicación con:
python index.py
En algunos sistemas (especialmente macOS y Linux) puede ser necesario usar python3:
python3 index.py
Se abrirá la ventana principal de la Plataforma Educativa Personalizada con unas dimensiones de 700 × 500 px, lista para usar.

La interfaz

Una vez abierta la aplicación, encontrarás cuatro pestañas en la parte superior de la ventana, cada una dedicada a un módulo funcional distinto:
PestañaDescripción
CursosCarga y ordena los cursos por relevancia usando Quick Sort, y permite buscar cualquier curso por su ID numérico mediante Búsqueda Binaria.
ProgresoSimula la recolección de actividad del estudiante en una cola FIFO y la sincroniza con la base de datos local.
AnálisisModela las transiciones entre módulos como un grafo y detecta automáticamente cuellos de botella con tasa de abandono superior al 50 %.
HistorialReconstruye de forma recursiva el árbol de prerrequisitos y módulos completados por el estudiante.
Consulta Módulos de la aplicación para una descripción detallada de cada pestaña y sus controles.

Base de datos local

La plataforma gestiona su propia persistencia sin necesidad de una base de datos externa. Al ejecutarse por primera vez, MotorBaseDatos comprueba si el archivo db_local.json existe en el directorio del proyecto. Si no existe, lo crea automáticamente con cinco cursos predeterminados y una lista de progresos vacía:
{
    "cursos": [
        {"id": 101, "nombre": "Matemáticas Básicas", "relevancia": 85, "dificultad": 3},
        {"id": 102, "nombre": "Programación en Python", "relevancia": 95, "dificultad": 5},
        {"id": 103, "nombre": "Historia del Arte", "relevancia": 60, "dificultad": 2},
        {"id": 104, "nombre": "Física Cuántica", "relevancia": 90, "dificultad": 9},
        {"id": 105, "nombre": "Estructuras de Datos", "relevancia": 99, "dificultad": 8}
    ],
    "progresos": []
}
Cada vez que sincronizas un progreso desde la pestaña Progreso, la entrada correspondiente se añade al arreglo "progresos" y el archivo se sobreescribe. No necesitas administrar este archivo manualmente; la clase MotorBaseDatos lo gestiona de forma transparente.
En macOS y Linux puede que necesites usar python3 en lugar de python para apuntar a Python 3. Ambos comandos funcionan correctamente dependiendo de cómo esté configurado el PATH en tu sistema.

Build docs developers (and LLMs) love