Generador de música con Javascript y React 🎧 🎶
Este proyecto es una aplicación construida con Javascript y React que se encarga de generar canciones aleatorias
basadas en patrones músicales básicos. Algunos de estos patrones son:
- Generación Aleatoria completa
- Generación Basada en escalas
- Generación Basada en distancia de tonos
- Generación Basada en tonos y acordes
- Generación Basada en Composición rítmica y melódica
También se puede visualizar la partitura de la composición generada y además se ofrece una visualización usando SVG.
Algunos codepen con experimentos que soportan las generaciones:
Otro repositorio con experimentos sobre Vexflow
Aquí puedes ver la presentación donde se expone este proyecto:
Link a las diapositivas
Comenzando 🚀
Clona el repositorio
git clone https://github.com/seagomezar/AI-Based-Music-Generator-ReactJS.git
Pre-requisitos 📋
Ten instalada la última versión de nodeJS (recomendada v18 o superior) que puedes obtener aquí:
https://nodejs.org/es/
Instalación 🔧
Ejecuta npm install para instalar las dependencias.
Ejecución ⚙️
Ejecuta npm start para un servidor de dev. Navega a http://localhost:3000/. La aplicación se recargará automáticamente cuando hagas algun cambio en el código.
Construcción 🔨
Ejecuta npm run build para crear una build de producción optimizada.
Despliegue 🚀
Para desplegar a GitHub Pages, ejecuta npm run deploy después de hacer build.
Construido con 🛠️
- React (v18.3.1) - Una biblioteca de JavaScript para construir interfaces de usuario.
- VexFlow (v5.0.0) - VexFlow es una API de representación de notación musical Open-Source. Está escrito completamente en JavaScript y se ejecuta directamente en el navegador.
- ToneJS (v15.1.22) - ToneJS API para la manipulación de la Web Audio API
Autores ✒️
- Sebastian Gomez - Trabajo Completo - seagomezar
¿Qué sigue para este proyecto?
- En realidad, quiero incluir diferentes tipos de estructuras de inteligencia artificial como modelos de Markov, redes neuronales, aprendizaje automático profundo para mejorar la calidad de las composiciones e incluso empezar a explorar armonias.
- No descarto convertir esto en un proyecto musical educativo.
- También podría crear composiciones orquestales completas de acuerdo a un genero o tema
- Cuentame tus ideas con un PR!
Expresiones de Gratitud 🎁
- Comenta a otros sobre este proyecto 📢
- Invitame una cerveza 🍺 o un café ☕.
- Da las gracias públicamente 🤓 my twitter @sebasgojs.
- etc.
⌨️ con ❤️ por sebasgojs 😊