Una aplicación web inteligente para la gestión de tareas musicales potenciada por Inteligencia Artificial, diseñada para estudiantes y profesionales de la música.
MusicTasks es una plataforma innovadora que combina la gestión de tareas musicales con la potencia de la Inteligencia Artificial de OpenAI. La aplicación ayuda a los usuarios a organizar sus tareas de estudio musical y recibir sugerencias personalizadas de práctica, además de proporcionar un asistente virtual para resolver dudas musicales.
- Sugerencias Inteligentes de Estudio: El agente de IA analiza tus tareas musicales y genera recomendaciones personalizadas de estudio basadas en tus objetivos y necesidades.
- Chat Musical Interactivo: Asistente de IA especializado en música que responde preguntas sobre teoría musical, técnicas, historia y más.
- Creación, edición y eliminación de tareas musicales
- Almacenamiento local mediante LocalStorage
- Interfaz intuitiva y fácil de usar
- Integración con proyectos relacionados del desarrollador
- Enlaces a tienda de música
- Recursos interactivos para el aprendizaje musical
- Contenido educativo curado
- Framework: Angular 18.1.3
- Estilos: Tailwind CSS
- Almacenamiento: LocalStorage
- Framework: NestJS
- IA: OpenAI API
- Angular CLI
- TypeScript
- Node.js
- Node.js (versión 18 o superior)
- npm o yarn
- Angular CLI (
npm install -g @angular/cli)
- Clonar el repositorio
git clone https://github.com/JuanAndreAV/musictasks.git
cd musictasks- Instalar dependencias
npm install- Configurar variables de entorno
Crea o edita el archivo src/environments/environment.ts:
export const environment = {
production: false,
apiUrl: 'http://localhost:3000' // URL de tu API NestJS
};Para producción, edita src/environments/environment.prod.ts:
export const environment = {
production: true,
apiUrl: 'https://tu-api-produccion.com' // URL de tu API en producción
};- Iniciar el servidor de desarrollo
ng serve- Acceder a la aplicación
Navega a
http://localhost:4200/en tu navegador.
ng serveLa aplicación se recargará automáticamente si modificas algún archivo fuente.
ng buildLos artefactos de construcción se almacenarán en el directorio dist/.
# Pruebas unitarias
ng test
# Pruebas end-to-end
ng e2e- Crear Tareas: Agrega nuevas tareas de estudio con detalles específicos
- Organizar: Visualiza y administra todas tus tareas en un solo lugar
- Persistencia: Todas las tareas se guardan localmente en tu navegador
- El agente analiza tus tareas pendientes
- Genera un plan de estudio personalizado
- Proporciona recomendaciones basadas en prioridades y objetivos
- Haz preguntas sobre teoría musical
- Solicita consejos de práctica
- Obtén explicaciones sobre conceptos musicales complejos
- Recibe orientación sobre técnicas instrumentales
- tareas.ts: Define la estructura de datos para las tareas musicales
- home: Página principal de la aplicación
- form: Formulario para crear y editar tareas musicales
- ai-suggestions: Vista de sugerencias generadas por IA
- categorias: Organización de tareas por categorías
- recomendados: Página con recomendaciones de recursos musicales
- shared: Componentes reutilizables entre páginas
- ai.service.ts: Maneja la comunicación con la API de OpenAI para sugerencias y chat
- tareas.service.ts: Gestiona las operaciones CRUD de tareas y LocalStorage
- Configuración de
apiUrlpara conectar con el backend NestJS
# Generar un nuevo componente
ng generate component nombre-componente
# Generar un servicio
ng generate service nombre-servicio
# Generar otros elementos
ng generate directive|pipe|service|class|guard|interface|enum|module
# Ayuda
ng helpEste proyecto utiliza una API REST desarrollada en NestJS que gestiona:
- Integración con OpenAI
- Procesamiento de solicitudes del agente de IA
- Gestión del chat musical
La interfaz está diseñada con Tailwind CSS, proporcionando:
- Diseño responsivo y adaptable
- Experiencia de usuario moderna y atractiva
- Componentes estilizados y consistentes
La aplicación incluye enlaces a otros proyectos del desarrollador:
- Tienda de música online
- Recursos interactivos para el aprendizaje musical
- Contenido educativo complementario
musictasks/
├── src/
│ ├── app/
│ │ ├── interfaces/
│ │ │ └── tareas.ts # Interface para las tareas musicales
│ │ ├── pages/
│ │ │ ├── ai-suggestions/ # Página de sugerencias de IA
│ │ │ ├── categorias/ # Página de categorías
│ │ │ ├── form/ # Formulario de tareas
│ │ │ ├── home/ # Página principal
│ │ │ ├── recomendados/ # Página de recomendaciones
│ │ │ └── shared/ # Componentes compartidos
│ │ ├── services/
│ │ │ ├── ai.service.ts # Servicio de integración con IA
│ │ │ └── tareas.service.ts # Servicio de gestión de tareas
│ │ └── app.component.ts
│ ├── assets/ # Recursos estáticos
│ └── environments/ # Variables de entorno (apiUrl)
├── package.json
└── angular.json
Las contribuciones son bienvenidas. Si deseas contribuir:
- Fork el proyecto
- Crea una rama para tu feature (
git checkout -b feature/AmazingFeature) - Commit tus cambios (
git commit -m 'Add some AmazingFeature') - Push a la rama (
git push origin feature/AmazingFeature) - Abre un Pull Request
Este proyecto está bajo la licencia especificada en el archivo LICENSE.
Juan Andrés Álvarez Velásquez (JuanitoCode)
- GitHub: @JuanAndreAV
- OpenAI por proporcionar la API de IA
- La comunidad de Angular por el excelente framework
- Todos los músicos que inspiran el desarrollo de herramientas educativas
Si encuentras algún problema o tienes sugerencias, por favor abre un issue en el repositorio de GitHub.
Hecho con ❤️ para la comunidad musical