这个项目能做什么
YourSpotify 是一个自托管应用,由 Web 服务器和 Web 客户端组成。服务器定期轮询 Spotify Web API 以记录用户的收听活动,并将数据存储在 MongoDB 数据库中。Web 应用提供一个仪表盘,用于探索收听习惯的统计数据。
部署主要通过 Docker Compose 进行,包含三个服务:服务器(Go)、Web 客户端(React)和 MongoDB。配置通过环境变量处理,包括 Spotify API 凭据(公钥和密钥)、端点 URL、时区以及可选的 Prometheus 认证。
要使用该应用,用户必须创建 Spotify 开发者应用,配置重定向 URI(例如,http://localhost:8080/oauth/spotify/callback),并向服务器提供凭据。服务器会自动处理 OAuth 认证和令牌刷新。
历史收听数据可以从 Spotify 的隐私数据导出中导入。支持两种导入方法:标准隐私数据(最近一年的历史,处理最多 5 天)和完整隐私数据(整个账户历史,处理最多 30 天)。导入过程使用缓存来最小化 Spotify API 请求,如果中断可以重试。
功能包括按用户设置时区、注册控制(管理员可以禁用新用户注册)、如果 Spotify 访问被撤销则重新认证,以及为多来源前端配置 CORS。项目包含 Prometheus 指标端点和结构化日志。
评论
0 评分人数达到10人后显示
登录后参与讨论。