Gabriela Liz Moreira, Henrique de Castilhos e Luiz Eduardo Kraisch Silva
O propósito do projeto é criar um sistema de recomendação de músicas baseado em um conjunto de dados do Spotify. A ideia é recomendar novas músicas para um usuário a partir de um conjunto de músicas que ele já ouviu.
Inicialmente será desenvolvido uma série de Jupyter Notebooks para validar as hipóteses e os dados. Após a validação, será desenvolvido um sistema em Flask utilizando os dados obtidos atráves dos Jupyter Notebooks e outro em React para a interface do usuário.
Para a validação do projeto, será necessário criar um dataset com variadas músicas e seus metadados do Spotify. Após a criação do dataset, será feita a análise exploratória dos dados para entender melhor o que será necessário para a recomendação e o sistema de recomendação em si.
Após tudo criado e validado utilizando notebooks, será passado o sistema de recomendações para uma aplicação em Flask, que será responsável por receber as músicas que o usuário já ouviu através de um endpoint e retornar as músicas recomendadas para ele.
Com os endpoints necessários criados, será desenvolvido uma aplicação em React para apresentar ao usuário as músicas recomendadas.
Para o usuário poder ver as recomendações fornecidas pelo sistema, será criada uma aplicação Web conectada à aplicação em Flask para poder facilitar o acesso do usuário ao recomendador. O design e conteúdos desta aplicação Web estão disponíveis neste Figma.
Para utilizar a aplicação, o usuário deve ter uma conta no Spotify e com um histórico de músicas e playlist disponíveis para análise.
Tela inicial da aplicação Web.Ao entrar na plataforma, o usuário deverá realizar o login usando sua conta do Spotify e continuar pelas próximas telas para selecionar uma playlist que lhe agrade para a recomendação ser feita.
Tela de seleção de playlists.Ao final, a aplicação Web exibirá todas as músicas recomendadas com base na playlist fornecida e deixará disponível um botão para a playlist ser adicionada à conta do Spotify do usuário.
Tela de exibição da playlist criada.Como informado nas especificações do projeto, será desenvolvido um sistema de recomendações para o usuário, seguindo a pipeline abaixo:
Após a conclusão do sistema de recomendação, será criado a API e a aplicação em React para o usuário poder utilizar o mesmo, como mostrado no artefato abaixo:
- Relevância do projeto e complexidade (10%)
- Documentação (20%)
- Código-fonte (20%)
- Estruturas de engenharia (25%)




