知了」是一个开源的音乐服务, 可以部署在任何 Linux/Windows/macOS 设备上, 主要有以下特点:
完全开源和数据完全掌控
知了分为服务端和客户端, 代码完全开源. 知了上的数据完全保留在本机, 包括数据库(Sqlite). 迁移服务只需要将知了的数据目录迁移即可.
支持 PWA, 媲美原生应用
PWA 是一种可以将 Web APP 安装到本地的一种技术, 安装之后可以像原生应用出现在系统的应用列表中, 并且启动后有独立的应用窗口. 当然, PWA 能做的不仅仅这些, 不过篇幅过长这里就不再概述了.
PWA 仅支持
HTTPS
或者localhost
, 知了目前暂不支持配置HTTPS
, 请使用nginx
之类的工具进行HTTPS
反向代理.
还算可以的 UI 设计以及适配移动端
因为我本身也不是设计出身, 也没什么设计天赋, 所以知了的 UI 都是按照自己的喜好还有参考其他应用设计出来的, 自以为 UI 上还过得去.
此外还在桌面端的基础上适配了移动端.
支持离线访问
得益于 PWA, 知了会把加载过的资源缓存在本地, 即使在断网情况下, 依然可以播放和查看已缓存的数据.
系统媒体支持
知了已接入系统媒体, 能够在操控台看到当前正在播放的音乐, 以及使用系统快捷键 /键盘快捷键进行操作.
多歌词支持
多用户
知了对用户数量没有限制, 只要你愿意就可以将知了服务分享给好友使用.
如何部署
知了的部署也很简单, 需要准备一个邮箱用于发送邮件, 因为知了的登录和其他部分服务需要依赖邮箱, 将邮箱信息填写到 JSON 或者 JSON5 格式的配置文件中:
{
"emailHost": "smtp.example.com",
"emailUser": "example",
"emailPass": "example-password"
}
然后从 Releases 页面下载并解压对应平台的包或者自行编译, 使用如下命令启动(以 x64 Linux 为例):
./cicada-linux-x64 start -c path_to/config.json
首次运行知了会要求输入管理员邮箱进行初始化, 初始化完成后访问 localhost:8000
或者 {{ip}}:8000
就可以访问了.
当然, 首次登入到知了是没有任何数据, 可以前往「我的音乐」页面创建新的音乐, 创建后就可以随时随地地畅听了.