Sobre o projeto
YourSpotify é uma aplicação auto-hospedada composta por um servidor web e um cliente web. O servidor consulta periodicamente a API Web do Spotify para registrar a atividade de escuta do usuário, armazenando os dados em um banco de dados MongoDB. A aplicação web apresenta um painel para explorar estatísticas sobre hábitos de escuta.
A implantação é feita principalmente via Docker Compose, com três serviços: o servidor (Go), o cliente web (React) e o MongoDB. A configuração é feita por meio de variáveis de ambiente, incluindo credenciais da API do Spotify (chaves pública e secreta), URLs de endpoint, fuso horário e autenticação opcional do Prometheus.
Para usar a aplicação, os usuários devem criar uma aplicação de desenvolvedor do Spotify, configurar a URI de redirecionamento (por exemplo, http://localhost:8080/oauth/spotify/callback) e fornecer as credenciais ao servidor. O servidor lida com a autenticação OAuth e a renovação de tokens automaticamente.
Dados históricos de escuta podem ser importados das exportações de dados de privacidade do Spotify. Dois métodos de importação são suportados: dados de privacidade padrão (último ano de histórico, até 5 dias para processar) e dados de privacidade completos (todo o histórico da conta, até 30 dias). O processo de importação usa cache para minimizar as solicitações à API do Spotify e pode ser repetido se for interrompido.
Os recursos incluem configurações de fuso horário por usuário, controle de registro (o administrador pode desativar novos cadastros), reautenticação se o acesso ao Spotify for revogado e configuração de CORS para frontends de múltiplas origens. O projeto inclui um endpoint de métricas do Prometheus e registro estruturado de logs.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.