Skip to content

Lucasgrimb/Crescendo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Documentación del Proyecto Crescendo

Descripción del Proyecto

Crescendo es un sistema revolucionario que llega para transformar las fiestas en experiencias interactivas, permitiendo a los participantes sugerir canciones al DJ de forma rápida y sencilla a través de un código QR. Con la ayuda de este sistema, el DJ obtendrá insights para personalizar su música y llevar la fiesta a otro nivel.

Objetivo de la Plataforma

El objetivo es innovar en cómo se maneja la música en eventos sociales. Crescendo brinda una solución a los asistentes para influir en la música y permite a los DJ's conocer mejor las preferencias de su público. Prioriza la simpleza, funcionalidad y velocidad, dándole al DJ control final sobre la música seleccionada.

Funcionalidades

Para el Público

  • Buscador de Canciones: Utiliza la API de Spotify para elegir entre más de 80 millones de canciones.
  • PerfilDj: Acceso a estadísticas detalladas del DJ.
  • Visualización de Canciones Pedidas: Muestra el estado de las canciones sugeridas.

Para DJ's

  • Registro y Login: Acceso a funciones exclusivas.
  • Historial de Eventos: Muestra de eventos pasados.
  • Gestión de Eventos: Creación y manejo de eventos.
  • Código QR por Evento: Generación y compartición de códigos QR únicos.

Herramientas Utilizadas

  • Spotify API
  • Visual Studio Code
  • GitHub
  • Postman
  • ChatGPT
  • MySQL Workbench,PhpMyAdmin
  • Node.js, Express
  • Figma, Pinterest
  • Cyclic, Vercel

Roles y Dificultades

Full-stack

  • Desarrollo de API: Creación completa de la API con 14 endpoints y middleware.
  • Manejo de Datos En El Front: Uso de username, tokens, party_id, principalmente a través de URL o localstorage.
  • Seguridad Web y Autenticación: Implementación de tokens, middleware, cookies (HttpOnly) y localstorage.
  • Diseño de la Base de Datos: En colaboración con la desarrolladora de backend.

Dificultades:

  • Comprensión de la API REST, el entorno de desarrollo y frameworks.
  • Uso de la API de Spotify y programación del sistema de autenticación.
  • Desafíos con CORS y ajustes necesarios en la lógica de autenticación para iOS.

Front-end

  • Pantalla con 3 Secciones: Diseño e implementación de una pantalla dividida para gestionar peticiones.
  • Gestión de Estados Dinámica: Manejo de estados de las peticiones.
  • Experiencia de Usuario: Enfoque mobile-first para la optimización en celulares.

Back-end

  • Base de Datos: Gestión y optimización.
  • Alojamiento en Cyclic y Vercel: Despliegue de la API y el front-end.
  • Optimización del Código: Mejoras para aumentar la eficiencia.
  • Actualización en Tiempo Real: Implementación de setInterval para visualización constante de las canciones.
  • Funcionalidades Adicionales: Integración de botones para compartir y guardar códigos QR.

Dificultades Técnicas:

  • Implementación de setInterval para actualizaciones automáticas.
  • Botón de Guardar QR y alojamiento manual en Cyclic.

Arte y Diseño

  • Diseño de Interfaz: Creación completa de las pantallas y el logo.
  • Estética Profesional: Tono minimalista y profesional.

Dificultades Técnicas:

  • Falta de experiencia previa en diseño web y uso de Figma.
  • Desafíos en la creación de la primera pantalla y el logo.

Metodología de Trabajo

El desarrollo de Crescendo se llevó a cabo en distintas etapas, cada una de ellas enfocada en objetivos específicos. Esta estrategia nos permitió obtener resultados funcionales desde el inicio del proyecto. La principal ventaja de esta metodología es su enfoque en objetivos claros y medibles, lo que facilita la visualización de los progresos y mantiene al equipo motivado y activo. Trabajar sin ver resultados concretos durante largos períodos puede resultar frustrante y monótono; nuestra metodología evita este problema.

Además, cada dos semanas, nos reunimos con todo el equipo para evaluar el progreso de cada miembro, discutir posibles cambios y planificar los siguientes pasos. Estas reuniones son cruciales para mantenernos alineados y enfocados en nuestras metas.

Otro aspecto importante de nuestro proceso de desarrollo es la colaboración con profesionales y expertos en la industria de eventos sociales. Su experiencia y conocimientos han sido fundamentales para guiar el rumbo de Crescendo, asegurando que el producto final cumpla con las necesidades reales del mercado y aporte un valor significativo a nuestros usuarios.

Este enfoque por etapas y nuestra colaboración con expertos de la industria son pilares clave en el desarrollo exitoso de Crescendo.

El Futuro de Crescendo

Como equipo, estamos convencidos de que Crescendo posee las características esenciales para destacar y ser ampliamente utilizado en eventos. Hemos establecido contactos con varios DJ's reconocidos, quienes han proporcionado feedback valioso, aportando una perspectiva más profesional al proyecto. Este intercambio ha sido fundamental para refinar y ajustar nuestra plataforma a las necesidades reales del mercado.

Un hito importante para nosotros será el lanzamiento de nuestro Producto Mínimo Viable (MVP) el 10/12/2023. En este evento, un DJ usará Crescendo en una fiesta con más de 200 asistentes, lo que representa una oportunidad significativa para demostrar el potencial y la eficacia de nuestra plataforma en un entorno real.

Planes a Futuro

Estamos comprometidos en continuar desarrollando y mejorando Crescendo. Entre nuestras metas futuras, hemos identificado las siguientes áreas clave de desarrollo:

  1. Aplicación Móvil para DJ's: Desarrollar una aplicación específicamente diseñada para DJ's, mejorando la accesibilidad y la experiencia de usuario en dispositivos móviles.

  2. Predicción de Aceptación de Canciones: Implementar un sistema que prediga la probabilidad de que un DJ acepte una sugerencia de canción. Esto se basará en algoritmos de aprendizaje automático que analicen patrones en las selecciones anteriores del DJ.

  3. Insights Post-Evento: Proveer a los DJ's insights detallados sobre las preferencias del público una vez finalizada la fiesta. Esto incluiría análisis de géneros más solicitados, canciones populares y feedback general del público.

  4. Interacción Social Mejorada: Explorar funcionalidades que permitan una mayor interacción social entre los asistentes y el DJ, como la posibilidad de votar por sugerencias de canciones populares o crear listas de reproducción colaborativas en tiempo real.

  5. Integración con Otras Plataformas de Música: Además de Spotify, considerar la integración con otras plataformas de streaming de música para ampliar las opciones de canciones disponibles.

Estos desarrollos futuros están alineados con nuestra visión de hacer de Crescendo una herramienta indispensable en el ámbito de los eventos sociales, mejorando continuamente la experiencia tanto para los DJ's como para el público.