Total Pageviews

Tuesday, 11 June 2024

SPlayer,一个简约的音乐播放器

  一个简约的音乐播放器,支持逐字歌词,下载歌曲,展示评论区,音乐云盘及歌单管理,音乐频谱,移动端基础适配 | A minimalist music player

    严肃警告

    • 请务必遵守 GNU Affero General Public License (AGPL-3.0) 许可协议
    • 在您的修改、演绎、分发或派生项目中,必须同样采用 AGPL-3.0 许可协议,并在适当的位置包含本项目的许可和版权信息
    • 禁止用于售卖或其他商业用途,如若发现,作者保留追究法律责任的权利
    • 若发现未遵守 AGPL-3.0 许可协议的行为,本项目将永久停更
    • 感谢您的尊重与理解
    • 本项目采用 Vue 3 全家桶和 Naïve UI 组件库及 Electron 开发

    • 支持网页端与客户端,由于设备有限,目前仅适配 Win,其他平台可自行解决兼容性后进行构建

    • 仅对移动端做了基础适配,不保证功能全部可用

      请注意,本程序不打算开发移动端,也不会对移动端进行完美适配,仅保证基础可用性

    • 欢迎各位大佬 Star 😍

    👀 Demo

    🎉 功能

  • ✨ 支持扫码登录
  • 📱 支持手机号登录
  • 📅 自动进行每日签到及云贝签到
  • 🎨 封面主题色自适应
  • 🌚 Light / Dark 模式自动切换
  • 📁 本地歌曲管理及分类(建议先使用 音乐标签 进行匹配后再使用)
  • 🎵 支持播放部分无版权歌曲(可能会与原曲不匹配,客户端独占功能)
  • ⬇️ 下载歌曲(最高支持 Hi-Res)
  • ➕ 新建歌单及歌单编辑
  • ❤️ 收藏 / 取消收藏歌单或歌手
  • 🎶 每日推荐歌曲
  • 📻 私人 FM
  • ☁️ 云盘音乐上传
  • 📂 云盘内歌曲播放
  • 🔄 云盘内歌曲纠正
  • 🗑️ 云盘歌曲删除
  • 📝 支持逐字歌词
  • 🔄 歌词滚动以及歌词翻译
  • 📹 MV 与视频播放
  • 🎶 音乐频谱显示
  • ⏭️ 音乐渐入渐出
  • 🔄 支持 PWA
  • 💬 支持评论区及评论点赞
  • 🌓 明暗模式自动 / 手动切换
  • 📱 移动端基础适配

获取

稳定版

通常情况下,可以在 Releases 中获取稳定版

开发版

可以通过 GitHub Actions 工作流获取最新的开发版,目前开发版仅提供 Win 版本

Dev Workflow

⚙️ Docker 部署

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

本地构建

请尽量拉取最新分支后使用本地构建方式,在线部署的仓库可能更新不及时

# 构建
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";
  1. Build and Output Settings 中的 Output Directory 改为 out/renderer

    build

  2. 点击 Deploy,即可成功部署

⚙️ 服务器部署

  • 重复 ⚙️ Vercel 部署 中的 1 - 4 步骤

  • 克隆仓库

    将链接中的 example/repository.git 替换为你要克隆的实际仓库的地址

    git clone https://github.com/example/repository
  • 安装依赖

    pnpm install
    # 或者
    yarn install
    # 或者
    npm install

    编译打包

    pnpm build
    # 或者
    yarn build
    # 或者
    npm build
    1. 将站点运行目录设置为 out/renderer 目录

    ⚙️ 本地部署

  • 本地部署需要用到 Node.js。可前往 Node.js 官网 下载安装包,请下载最新稳定版

  • 安装 pnpm

    npm install pnpm -g
    1. 克隆仓库并拉取至本地,此处不再赘述

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

    3. 复制 /.env.example 文件并重命名为 /.env 并修改配置

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

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

    😘 鸣谢

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

    from https://github.com/imsyy/SPlayer

     下载地址:

    https://github.com/imsyy/SPlayer/releases/download/v2.0.9/SPlayer-2.0.9-setup.exe

     

    No comments:

    Post a Comment