Aplicación de escritorio para Windows que consulta Moodle mediante su API oficial, identifica actividades académicas pendientes y muestra recordatorios locales.
El repositorio no incluye capturas de pantalla de la interfaz. Se muestra la imagen de marca existente para mantener el README sin archivos externos.
Revisar manualmente Moodle puede hacer que un estudiante pase por alto tareas, fechas de entrega o cambios en sus cursos. ChivaTask centraliza las actividades pendientes en una app local, conserva una caché mínima y ayuda a recordar tareas importantes sin guardar credenciales en archivos del proyecto.
- Consulta de cursos y tareas mediante Moodle Web Services.
- Detección de actividades pendientes, vencidas y sin fecha.
- Sincronización en segundo plano para no bloquear la interfaz.
- Notificaciones locales y bandeja del sistema en Windows.
- Caché local en SQLite para consultar información reciente.
- Gestión de credenciales con Windows Credential Manager mediante
keyring. - Pruebas automatizadas para dominio, aplicación, infraestructura y presentación.
- Python 3.11+
- PySide6 / Qt Widgets
- SQLite
- Moodle Web Services
- Windows Credential Manager
- Git y GitHub
El proyecto está organizado por capas:
domain/: modelos, reglas de priorización y políticas de tareas.application/: casos de uso y puertos para coordinar sincronización, consultas y ajustes.infrastructure/: adaptadores concretos para Moodle, SQLite, credenciales, notificaciones y funciones de escritorio.presentation/: interfaz Qt, componentes visuales, bandeja del sistema y trabajadores de sincronización.app/: composición de dependencias y arranque de la aplicación.
- Las contraseñas y tokens no se guardan en archivos del repositorio.
- Las credenciales se almacenan con
keyring; en Windows se integran con Windows Credential Manager. - SQLite se usa como caché local y no debe contener contraseñas ni tokens.
- No se deben publicar bases reales, tokens, credenciales, datos de estudiantes ni respuestas completas de Moodle.
- La aplicación usa la API oficial de Moodle; no depende de scraping.
python -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -r requirements.txt
pip install -e ..\.venv\Scripts\Activate.ps1
python src\main.pyEn la primera ejecución se solicitan credenciales del campus. La aplicación las almacena mediante el administrador de credenciales del sistema, no dentro del repositorio.
python -m unittest discover -s tests -t .MVP funcional para escritorio Windows. Incluye sincronización con Moodle, caché local, manejo seguro de credenciales, interfaz Qt, notificaciones locales y pruebas automatizadas.
- No hay instalador ni ejecutable empaquetado en el repositorio.
- El funcionamiento completo depende de credenciales válidas y disponibilidad de Moodle.
- Las notificaciones de escritorio están orientadas a Windows.
- El repositorio no incluye capturas de pantalla de la interfaz.
No hay build configurado por ahora. No generar .exe salvo solicitud explícita.