一个同人音声专用的音乐流媒体服务器,详细的使用说明见用户文档
- 从 DLSite 爬取音声元数据
- 通过标签或关键字快速检索想要找到的音声
- 根据音声元数据对检索结果进行排序
- 可以选择通过 JWT 验证用户或关闭用户认证功能
- 支持在 Web 端修改配置文件和扫描音声库
- 支持为音声库添加多个根文件夹
# 安装依赖
npm install
# 启动服务器
npm start
# Express listening on http://localhost:8888
本项目还有打包好的 Windows 系统下可用的 exe 可执行文件与 docker 镜像版本,docker 镜像的使用说明详见用户文档
- axios (网络请求)
- express (构建后端服务)
- sqlite3 (文件型数据库)
- knexjs (操作数据库)
- cheerio (将 html 解析为 jQuery 对象)
- jsonwebtoken (用户认证)
- socket.io (用于将扫描音声库的结果实时传给客户端)
- child_process (nodejs 子进程)
- pkg (打包为可执行文件)
├── auth/ # 用户认证相关路由
├── config/ # 存放配置文件
├── covers/ # 存放音声封面
├── database/ # 操作数据库相关代码
├── dist/ # 存放前端项目 kikoeru-quasar 构建的 SPA
├── filesystem/ # 存放扫描相关代码
├── package/ # 存放 pkg 打包后的可执行文件
├── scraper/ # 存放爬虫相关代码
├── sqlite/ # 存放 sqlite 数据库文件
├── static/ # 存放静态资源
├── .gitignore # git 忽略路径
├── api.js # 为 express 实例添加路由与 jwt 验证中间件
├── app.js # 项目入口文件
├── config.js # 用于生成与修改 config.json 配置文件
├── Dockerfile # 用于构建 docker 镜像的文本文件
├── package.json # npm 脚本和依赖项
└── routes.js # 主要路由
- 添加计划任务,定期更新音声的动态元数据
- 允许用户手动修改音声元数据
- 手动添加抓不到元数据的音声
- 爬取音声的简介信息
- 添加收藏功能
- 添加保存歌单功能
本项目的大部分后端代码来自于开源项目 kikoeru