SPlayer是开源社区Github上一个简约的仿网易云音乐播放器源码,支持逐字歌词,下载歌曲,展示评论区,音乐云盘及歌单管理,音乐频谱,移动端基础适配。本项目采用 Vue 3 全家桶和 Naïve UI 组件库及 Electron 开发。
支持网页端与客户端,由于设备有限,目前仅适配 Win,其他平台可自行解决兼容性后进行构建。
主要功能
✨ 支持扫码登录
📱 支持手机号登录
📅 自动进行每日签到及云贝签到
🎨 封面主题色自适应
🌚 Light / Dark 模式自动切换
📁 本地歌曲管理及分类(建议先使用 音乐标签 进行匹配后再使用)
🎵 支持播放部分无版权歌曲(可能会与原曲不匹配,客户端独占功能)
⬇️ 下载歌曲(最高支持 Hi-Res)
➕ 新建歌单及歌单编辑
❤️ 收藏 / 取消收藏歌单或歌手
🎶 每日推荐歌曲
📻 私人 FM
☁️ 云盘音乐上传
📂 云盘内歌曲播放
🔄 云盘内歌曲纠正
🗑️ 云盘歌曲删除
📝 支持逐字歌词
🔄 歌词滚动以及歌词翻译
📹 MV 与视频播放
🎶 音乐频谱显示
⏭️ 音乐渐入渐出
🔄 支持 PWA
💬 支持评论区及评论点赞
🌓 明暗模式自动 / 手动切换
📱 移动端基础适配
截图预览
本地构建
请尽量拉取最新分支后使用本地构建方式,在线部署的仓库可能更新不及时
# 构建
docker build -t splayer .
# 运行
docker run -d --name SPlayer -p 7899:7899 splayer
# 或使用 Docker Compose
docker-compose up -d
在线部署
# 从 Docker Hub 拉取
docker pull imsyy/splayer:latest
# 从 GitHub ghcr 拉取
docker pull ghcr.io/imsyy/splayer:latest
# 运行
docker run -d --name SPlayer -p 7899:7899 imsyy/splayer:latest
以上步骤成功后,将会在本地 localhost:7899 启动,如需更换端口,请自行修改命令行中的端口号
Vercel 部署
其他部署平台大致相同,在此不做说明
(1)本程序依赖 NeteaseCloudMusicApi 运行,请确保您已成功部署该项目,并成功取得在线访问地址
(2)点击本仓库右上角的 Fork
,复制本仓库到你的 GitHub
账号
(3)复制 /.env.example
文件并重命名为 /.env
(4)将 .env
文件中的 RENDERER_VITE_SERVER_URL
改为第一步得到的 API 地址
RENDERER_VITE_SERVER_URL = "https://example.com";
(5)将 Build and Output Settings
中的 Output Directory
改为 out/renderer
(6)点击 Deploy
,即可成功部署
服务器部署
(1)重复 ⚙️ Vercel 部署
中的 1 – 4 步骤
(2)克隆仓库
将链接中的 example/repository.git 替换为你要克隆的实际仓库的地址
git clone https://github.com/example/repository.git
(3)安装依赖
pnpm install
# 或者
yarn install
# 或者
npm install
(4)编译打包
pnpm build
# 或者
yarn build
# 或者
npm build
将站点运行目录设置为 out/renderer 目录
本地部署
本地部署需要用到 Node.js。可前往 Node.js 官网 下载安装包,请下载最新稳定版
安装 pnpm
npm install pnpm -g
克隆仓库并拉取至本地,此处不再赘述
使用 pnpm install 安装项目依赖(若安装过程中遇到网络错误,请使用国内镜像源替代,此处不再赘述)
复制 /.env.example 文件并重命名为 /.env 并修改配置
打包客户端,请依据你的系统类型来选择,打包成功后,会输出安装包或可执行文件在 /dist 目录中,可自行安装
命令 | 系统类型 |
---|---|
pnpm build:win |
Windows |
pnpm build:linux |
Linux |
pnpm build:mac |
MacOS |