Aceleradio - Seu Assistente Musical de Direção 🎵

Documentação disponível em: https://aceleradio.vercel.app/

Inspiração 🚀

Queríamos criar uma forma divertida e interativa de tornar a experiência de dirigir mais agradável, combinando música com o estilo de direção. A ideia surgiu de uma pergunta simples: "E se o seu carro pudesse entender como você dirige e adaptar a trilha sonora automaticamente?"

O que ele faz 🎯

O Aceleradio é um player de música inteligente que adapta dinamicamente as músicas com base no seu estilo de direção, analisando os dados do pedal do acelerador em tempo real. Ele oferece:

  • Adaptação musical em tempo real: alterna automaticamente entre gêneros musicais conforme a intensidade da sua direção.
  • Interface dinâmica: muda o esquema de cores e elementos visuais de acordo com o modo de direção atual:

    • Modo Calmo (Azul): para uma condução leve e relaxada
    • Modo Moderado (Verde): para uma direção equilibrada e controlada
    • Modo Agressivo (Vermelho): para momentos de direção intensa
  • Seleção inteligente de faixas:

    • Calmo: Rises the Moon – Liana Flores
    • Moderado: That’s What I Like – Bruno Mars
    • Agressivo: Psychosocial – Slipknot

Como construímos 🛠️

Frontend (React Native + Expo)

  • Integração com WebSocket em tempo real usando Socket.IO
  • Sistema de temas dinâmicos, com UI responsiva que se adapta ao comportamento do motorista
  • Gerenciamento de áudio:

    • Utilizamos a API de Áudio do Expo para transições suaves entre faixas
    • Tratamento adequado da reprodução para evitar sobreposição de músicas
    • Barra de progresso e exibição de tempo de reprodução
  • Componentes de UI personalizados:

    • Player com barra de progresso
    • Indicadores visuais de modo de direção
    • Exibição de nome do artista e faixa atual

Backend (NestJS)

  • Servidor WebSocket para envio de dados em tempo real
  • Arquitetura limpa, seguindo boas práticas de organização de código
  • Processamento de dados em tempo real para analisar os dados do acelerador e determinar o modo de direção
  • Processamento assíncrono através de filas utilizando GCP PubSub

Desafios que enfrentamos 🧩

  1. Transmissão de dados em tempo real:
  • Estabilizar conexões WebSocket
  • Garantir consistência dos dados em diferentes redes
  1. Integração com hardware:
  • Encontrar cabos USB 2.0 compatíveis para transmissão dos dados
  • Calibrar os sensores de forma adequada
  1. Desenvolvimento mobile:
  • Superar limitações de build no React Native
  • Gerenciar corretamente os estados de reprodução de áudio
  • Criar transições visuais suaves entre modos
  1. Trabalho em equipe:
  • Lidar com prazos apertados
  • Sincronizar o desenvolvimento entre frontend e backend
  • Documentar bem o projeto para facilitar a manutenção

Conquistas que nos orgulham 🏆

  1. Técnicas:
  • Transmissão de dados em tempo real funcionando com estabilidade
  • Troca de músicas suave, sem sobreposições
  • Interface intuitiva e responsiva
  • Código limpo, bem organizado e fácil de manter
  1. De equipe:
  • Excelente colaboração entre os membros
  • Documentação consistente
  • Integração bem-sucedida entre diferentes tecnologias
  • Cumprimento de prazos apertados

O que aprendemos 📚

  1. Habilidades técnicas:
  • Manipulação de dados em tempo real
  • Implementação de WebSocket
  • Gerenciamento de áudio no mobile
  • Boas práticas no React Native
  1. Habilidades de equipe:
  • Melhor planejamento de projeto
  • Comunicação eficiente
  • Trabalho sob pressão
  • Importância da documentação

Próximos passos para o Aceleradio 🔮

  1. Análise de direção mais avançada:
  • Aplicar modelos de machine learning para entender melhor o comportamento do motorista
  • Correlacionar mais dados de sensores
  • Melhorar a precisão na detecção do modo de direção
  1. Expansão de funcionalidades:
  • Adicionar mais faixas e gêneros musicais
  • Implementar preferências personalizadas de usuário
  • Suporte ao modo offline
  • Playlists personalizadas por modo de direção
  1. Melhorias na experiência de usuário (UI/UX):
  • Animações mais fluidas nas transições de modo
  • Controles por gestos
  • Comandos por voz
  • Experiência cada vez mais personalizada

Teste você também 👇

Experimente como o Aceleradio transforma sua experiência ao volante, adaptando a trilha sonora ao seu ritmo de direção. Conecte os sensores, comece a dirigir e deixe a música acompanhar seu estilo!


Se quiser, posso ajudar a montar também o conteúdo visual (imagens, vídeos ou gráficos) para o Devpost. Deseja que eu crie um pequeno pitch visual ou sugestão de estrutura de apresentação?

Built With

  • css
  • docusaurus
  • nestjs
  • react
  • stylesheets
  • teltonika-fmc003
  • zig
Share this project:

Updates