Skip to content
 
 

Latest commit

 

History

1,903 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

二改说明

侧重点在于完善在 Docker 部署网页端上面的体验,利用 AI 改了点代码,本人并未修改过任何代码,基本不会有更新,如有冒犯请联系删除

🎉 功能(原版不再提)

  • ✨ 支持 Docker 部署的网页端解灰
  • 📱 更全的移动端UI适配
  • 👤 支持未登录下收藏歌手/专辑/歌单,以及下载歌曲
logo

SPlayer

一个简约的音乐播放器

API Docs | 开发版 | 发行版


main

说明

提示

Important

严肃警告

  • 请务必遵守 GNU Affero General Public License (AGPL-3.0) 许可协议
  • 在您的修改、演绎、分发或派生项目中,必须同样采用 AGPL-3.0 许可协议,并在适当的位置包含本项目的许可和版权信息
  • 若您用于售卖或其他盈利用途,必须提供本项目的源代码及原项目链接。另外由于本项目涉及第三方,售卖后可能遭受法律或诉讼风险。如若发现违反许可协议,作者保留追究法律责任的权利
  • 禁止在二开项目中修改程序原版权信息( 您可以添加二开作者信息 )
  • 感谢您的尊重与理解
  • 本项目采用 Vue 3 + TypeScript + Naïve UI + Electron 开发
  • Node.js 版本要求:>= 20,包管理器:pnpm >= 10
  • 默认会构建原生模块,需准备 Rust 工具链;如仅需要网页端构建或暂时跳过,可设置环境变量 SKIP_NATIVE_BUILD=true
  • 支持网页端与客户端,由于设备有限,目前仅保证 Windows 系统的适配,其他平台如遇问题可以提 Issue 或自行解决后选择提 PR
  • 欢迎各位大佬 Star 😍

🧑‍💻 开发

快速开始

  1. 安装依赖:pnpm install
  2. 复制 .env.example 为 .env 并按需修改
  3. 启动开发:pnpm dev
  4. 构建:
    • pnpm build
    • pnpm build:win

跳过原生模块构建

默认会编译 native/* 下的原生模块(需要 Rust)。如果你的场景不需要原生能力,可设置 SKIP_NATIVE_BUILD=true 后再执行 pnpm dev / pnpm build。

🖼️ 界面展示

开发中,仅供参考

主页面

主页面

播放页面

播放页面

发现页面

发现页面

歌单页面

发现页面

评论页面

发现页面

本地音乐

发现页面

自行部署方案

⚙️ Docker 部署

安装及配置 Docker 将不在此处说明,请自行解决

本地构建

请拉取 Github 仓库文件后使用本地构建

# 构建
docker build -t splayer .

# 运行
docker run -d --name SPlayer -p 25884:25884 splayer
# 或使用 Docker Compose
docker-compose up -d

Docker 镜像内包含网页端以及运行所需的服务,默认通过 25884 端口访问。

⚙️ 本地部署

  1. 本地部署需要用到 Node.js(>= 20),可前往 Node.js 官网 下载安装包,请下载最新稳定版

  2. 安装 pnpm(>= 10)

    corepack enable
    # 或
    npm install pnpm -g
  3. 克隆仓库并拉取至本地,此处不再赘述

  4. 使用 pnpm install 安装项目依赖(若安装过程中遇到网络错误,请使用国内镜像源替代,此处不再赘述)

  5. 复制 .env.example 文件并重命名为 .env 并修改配置(如需跳过原生模块构建,可设置 SKIP_NATIVE_BUILD=true)

  6. 打包客户端,请依据你的系统类型来选择,打包成功后,会输出安装包或可执行文件在 /dist 目录中,可自行安装

    默认情况下,构建命令仅会构建当前系统架构的版本。如需构建特定架构(如 x64 + arm64),请在命令后追加参数,例如:pnpm build:win -- --x64 --arm64

    命令 系统类型
    pnpm build:win Windows
    pnpm build:linux Linux
    pnpm build:mac macOS

😘 鸣谢

特此感谢为本项目提供支持与灵感的项目:

🗺️ 贡献者联盟

欢迎加入我们 🥰! 一起为 SPlayer 贡献一份力量。 感谢以下所有贡献者 💖

SPlayer 项目贡献者

📢 免责声明

本项目部分功能使用了网易云音乐的第三方 API 服务,仅供个人学习研究使用,禁止用于商业及非法用途

同时,本项目开发者承诺 严格遵守相关法律法规和网易云音乐 API 使用协议,不会利用本项目进行任何违法活动。 如因使用本项目而引起的任何纠纷或责任,均由使用者自行承担。本项目开发者不承担任何因使用本项目而导致的任何直接或间接责任,并保留追究使用者违法行为的权利

请使用者在使用本项目时遵守相关法律法规,不要将本项目用于任何商业及非法用途。如有违反,一切后果由使用者自负。 同时,使用者应该自行承担因使用本项目而带来的风险和责任。本项目开发者不对本项目所提供的服务和内容做出任何保证

感谢您的理解

📜 开源许可

  • 本项目仅供个人学习研究使用,禁止用于商业及非法用途
  • 本项目基于 GNU Affero General Public License (AGPL-3.0) 许可进行开源
    1. 修改和分发: 任何对本项目的修改和分发都必须基于 AGPL-3.0 进行,源代码必须一并提供
    2. 派生作品: 任何派生作品必须同样采用 AGPL-3.0,并在适当的地方注明原始项目的许可证
    3. 注明原作者: 在任何修改、派生作品或其他分发中,必须在适当的位置明确注明原作者及其贡献
    4. 免责声明: 根据 AGPL-3.0,本项目不提供任何明示或暗示的担保。请详细阅读 GNU Affero General Public License (AGPL-3.0) 以了解完整的免责声明内容
    5. 社区参与: 欢迎社区的参与和贡献,我们鼓励开发者一同改进和维护本项目
    6. 许可证链接: 请阅读 GNU Affero General Public License (AGPL-3.0) 了解更多详情

About

🎵简约的跨平台音乐播放器,支持逐字��词、桌面歌词、任务栏歌词、云盘音乐、本地音乐管理及流媒体播放。 A cross-platform music player with Jellyfin / Navidrome / Emby media server support, word-by-word lyrics, desktop & taskbar lyrics, cloud music drive, local library management, audio spectrum visualization and mobile-friendly UI.

Resources

Contributing

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages