MyPlanU es una aplicación de productividad y calendario diseñada específicamente para estudiantes, ayudándoles a organizar sus actividades, recordatorios y eventos académicos de manera eficiente.
Esta versión del proyecto integra PROMPTY Lite, una versión ligera del asistente de escritorio inteligente PROMPTY 3.0, que permite a los usuarios interactuar con una IA conversacional directamente desde la aplicación para resolver dudas o generar ideas.
La solución sigue una arquitectura limpia dividida en capas para asegurar mantenibilidad y escalabilidad.
-
MyPlanU.App/(Frontend - .NET MAUI)- Es la aplicación cliente multiplataforma (Android/Windows).
- Sigue el patrón MVVM (Model-View-ViewModel).
- Pages: Contiene las vistas XAML (
LoginPage,EventosPage,PromptyPage, etc.). - ViewModels: Lógica de presentación y estado de las vistas.
- Services: Servicios de cliente, incluyendo
PromptyLiteHttpClientpara comunicarse con la API de Python.
-
MyPlanU.Backend/(Backend & Data - .NET Class Library)- Contiene la lógica de negocio y acceso a datos.
- Models: Definición de entidades (
Usuario,Actividad,Recordatorio). - Data: Contexto de base de datos SQLite y repositorios.
- Business: Servicios de dominio (
ActividadService,AuthService).
-
PROMPTY_3.0/(Módulo de IA - Python)- Contiene el código fuente de PROMPTY 3.0 adaptado para funcionar como servicio.
- Expone una API REST (FastAPI) que MyPlanU consume localmente.
- Utiliza Hugging Face como proveedor de inteligencia artificial.
- .NET 10 SDK (o la versión compatible con MAUI especificada en el proyecto).
- Visual Studio 2022 (o VS Code con extensiones de C# y MAUI) con las cargas de trabajo de MAUI instaladas.
PROMPTY funciona como un servicio local en Python. No es necesario para compilar la app, pero sí para usar las funciones de IA.
- Python 3.13+ instalado.
- uv (Gestor de paquetes de Python rápido).
Para preparar el entorno de Python:
- Abre una terminal en la raíz del proyecto (donde se encuentra
pyproject.toml). - Ejecuta
uv syncpara instalar todas las dependencias necesarias en un entorno virtual.
- Gestión de Usuarios: Registro e inicio de sesión seguro.
- Gestión de Eventos: Crear, editar, eliminar y listar eventos académicos.
- Descripción Opcional: Agiliza la creación de eventos rápidos.
- Confirmaciones: Mensajes claros de éxito al crear, editar o eliminar.
- Seguridad: Confirmación antes de eliminar eventos importantes.
- Sistema de Amigos: Buscar usuarios, enviar solicitudes y gestionar amistades.
- Privacidad: Mensajes de solicitud discretos.
- Organización: Lista de amigos priorizada sobre solicitudes pendientes.
- Compartir Actividades:
- Modo Copia (Independiente): Envía una copia del evento a un amigo para que lo gestione por su cuenta.
- Modo Compartido (Colaborativo): Comparte el evento real para que ambos puedan editarlo y ver los cambios en tiempo real.
- Integración con PROMPTY Lite: Chat con asistente de IA para consultas rápidas.
- Configuración Básica:
- Cambio de tema (Claro/Oscuro).
- Cambio de contraseña.
- Edición de perfil.
- Sistema de Notificaciones y Alertas.
- Creación automática de eventos desde el chat de IA.
Por razones de seguridad, este repositorio NO incluye claves de API. Para utilizar las funciones inteligentes de PROMPTY, necesitas tu propio token de Hugging Face (es gratuito).
No necesitas editar archivos manualmente. MyPlanU incluye un flujo de configuración integrado:
- Abre la aplicación MyPlanU.
- Intenta acceder a la sección de PROMPTY.
- Si no tienes un token configurado, la app te pedirá que lo ingreses.
- El token se validará contra la API y, si es correcto, se guardará localmente de forma segura (en
config_local.json, que es ignorado por Git).
Nota: Si no configuras un token, podrás usar la app normalmente, pero al intentar entrar al chat de PROMPTY recibirás un aviso para configurarlo.
Sigue estos pasos para levantar todo el ecosistema (App + IA).
git clone https://github.com/ErvingMiranda/MyPlanU-NullException.git
cd MyPlanU-NullExceptionEs necesario que este servicio esté corriendo para que la app pueda hablar con la IA.
En Windows:
- Ve a la carpeta
PROMPTY_3.0/scripts. - Ejecuta
start_prompty_api.bat.
En Linux/Mac:
- Ve a la carpeta
PROMPTY_3.0/scripts. - Ejecuta
chmod +x start_prompty_api.sh(si es necesario). - Ejecuta
./start_prompty_api.sh. - Ejecuta
start_prompty_api.bat.
En Linux/Mac (o terminal manual):
cd PROMPTY_3.0
uv run uvicorn api.server:app --reload --port 8000Verás que el servidor inicia en http://127.0.0.1:8000.
- Abre
MyPlanU.slnen Visual Studio o la carpeta en VS Code. - Restaura los paquetes NuGet (debería ser automático).
- Selecciona tu dispositivo de destino (Android Emulator o Windows Machine).
- Ejecuta la aplicación (F5).
- Inicia sesión en MyPlanU (puedes registrar un usuario nuevo).
- Ve a la pantalla de Eventos.
- Toca el botón para abrir PROMPTY.
- Sigue las instrucciones para ingresar tu token de Hugging Face.
- ¡Empieza a chatear con tu asistente!
Este proyecto es una colaboración que integra dos bases de código distintas:
- MyPlanU: Propiedad del equipo NullException.
- PROMPTY 3.0: Propiedad del equipo PROMPTY.
El uso de PROMPTY Lite dentro de MyPlanU ha sido autorizado por los creadores originales. Ambas partes del código se distribuyen respetando la autoría de sus respectivos equipos.
Este proyecto es la culminación del esfuerzo de tres equipos diferentes a lo largo del tiempo, uniendo tecnologías y visiones, con Erving Miranda como hilo conductor en todos ellos (11 colaboradores en total).
Creadores del asistente de escritorio PROMPTY 3.0 como proyecto para la asignatura de Introducción a la Programación en la UAM (Universidad Americana). Su tecnología "Lite" impulsa la inteligencia de esta aplicación.
- Erving Miranda
- Liang Zúñiga
- María Carrasco
- Owen Bravo
Desarrollaron la primera versión móvil de la agenda (sin IA) para la competencia Hackathon Nicaragua 2025.
- Erving Miranda
- Garry Velasquez
- Gerson Ramírez
- Mirna Samanta Ulloa
- Sonia Pérez
El equipo actual que ha integrado todo, creando la versión definitiva de MyPlanU con la potencia de PROMPTY como proyecto para la asignatura de Programación Estructurada en la UAM (Universidad Americana).
- Erving Miranda
- Fernando Zapata
- Mery López
- Osman Cerpas
MyPlanU combina la gestión de productividad académica con la potencia de PROMPTY para ofrecer una experiencia única a los estudiantes.
Este proyecto está bajo la Licencia Creative Commons Attribution 4.0 International (CC BY 4.0). Consulta el archivo LICENSE para más detalles.