开发者生态
morning
Show HN:Rocksky – AT 协议上的音乐记录和发现
2026-05-16
1 阅读
tsiry
Rocksky # 基于 AT 协议 ? 构建的去中心化音乐跟踪和发现平台,请参阅 Rocksky 。 ✨ 功能 # ? Scrobbling API # Last.fm 兼容 API – Last.fm scrobblers 的直接替代品 ListenBrainz 兼容 API – 与支持 ListenBrainz 的客户端配合使用? 播放和历史记录 # 最近播放的时间线 – 浏览您的收听历史记录 故事视图 – 查看其他用户实时播放的内容 统计 – 可视化每天的 scrobbles ? 用户见解 # 顶级艺术家,曲目和专辑 – 您的收听习惯的个性化图表 Shoutbox 和 Like – 与其他听众互动并分享反应 ? 客户端集成 # Spotify – 检测正在播放的曲目并直接从 Spotify 进行搜索 Jellyfin – 从您的媒体服务器播放曲目 Pano Scrobbler – Android/Linux/Windows 支持 WebScrobbler – 直接从浏览器进行搜索 ? 搜索 # 搜索引擎 – 由 MeiliSearch 提供支持的快速搜索 ? 即将推出 /路线图 # Webhooks - 订阅 scrobble 事件并与 Discord 或您自己的应用程序集成 个性化 Feed - 通过社区驱动的 feed 算法发现音乐 Last.fm → Rocksky 镜像(未来 Scrobbles) - 自动将 Last.fm 中的新 scrobbles 镜像到 Rocksky Rocksky Connect - 跨设备远程播放(类似于 Spotify Connect) 多源库 - 从 Google Drive、Dropbox、S3、FTP 和 浏览和 scrobble更多 流式传输和编辑您自己的音乐 – 上传您的音乐库并直接在 Rocksky 上播放 扩展 – 使用您自己的逻辑自定义和扩展 Rocksky 交叉淡入淡出和均衡器设置同步 – 跨设备携带您的播放首选项 ? 先决条件 # Node.js(v22 或更高版本) Deno Rust Go Turbo Docker Wasm Pack https://github.com/drager/wasm-pack DuckDB https://duckdb.org/docs/installation 1.2.0 Spotify SPOTIFY_CLIENT_ID 和 SPOTIFY_CLIENT_SECRET 来自 Spotify 开发人员仪表板中的设置 ? 入门 # 克隆存储库: git clone git@tangled.sh:rocksky.app/rocksky cd rocksky 安装依赖项: npm install -g Turbo Bun install Bun run build:raichu 设置环境变量: cp apps/api/.env.example apps/api/.env cp apps/web/.env.example apps/web/.env cp apps/feeds/.env.example apps/feeds/.env cp .env.example .env # 编辑 .env 文件以添加配置 启动 Docker 容器: docker compose up 运行数据库迁移:turbo db:migrate --filter = @rocksky/api 设置 Spotify App: # 不要忘记设置 SPOTIFY_ENCRYPTION_KEY 和 SPOTIFY_ENCRYPTION_IV 环境变量 Bun run Spotify 填充数据库(可选):bun run db:pgpull 启动分析 API:bun run dev:analytics 启动 jetstream:bun run dev:jetstream 启动 musicbrainz:bun run mb 启动 feeds:bun run feeds 启动开发服务器:turbo dev --filter = @rocksky/api --filter = @rocksky/web ? 文档 # 查看完整文档 ✍️ 反馈 # 这个存储库是中心位置收集与 Rocksky 相关的反馈和问题。如果您想留下反馈,请打开一个问题。欢迎加入我们的 Discord 服务器? 贡献 # 我们很乐意听到您的反馈或建议。联系我们的最佳方式是通过 Discord 。我们也欢迎拉取请求到这个仓库。有关在本地设置此存储库的信息,请参阅 CONTRIBUTING.md。