每首歌只听最High部分的音乐播放器(支持酷狗/网易/虾米)
Branch: develop
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.

README.md

Music Player

在线试用

目录说明

api

支持 酷狗/网易/虾米 音乐获取

npm build coverage

backend

基于 nestjs 调用 @s4p/music-api 提供 graphql 接口的后台服务

frontend

基于 Angular 6 提供简易的界面

proxy

提供跨域歌曲 URL

nmdb

提供 mongodbnedb 以相似接口

devops

docker-compose 启动/构建脚本

界面说明

main peak search playlist

Quickstart

内存存储

docker-compose -f devops/data/docker-compose-build-memory.yml build
docker-compose -f devops/data/docker-compose-build-memory.yml up

访问 http://localhost:8000

mongodb 存储

docker-compose -f devops/data/docker-compose-build-mongo.yml build
docker-compose -f devops/data/docker-compose-build-mongo.yml up

访问 http://localhost:8000

变量说明

environment:
  # 运行环境配置, 请勿变动
  - NODE_ENV=docker
  # docker 内部端口
  - PORT=80
  # 歌曲缓存路径, 此处为docker容器内部路径
  - SAVE_DIR=/app/.music
  # mongodb 或者 nedb url
  - NMDB_URL=${NMDB_URL}
volumes:
  # 将 歌曲缓存映射到宿主机路径
  - ./data/.music:/app/.music
ports:
  # 容器端口映射到宿主机
  - '8000:80'

Q&A

docker-compose 中只用到了 frontendbackend 项目, 其它都没有用到

  • proxy 项目的相关功能在 backend 项目中已经存在了, 独立成 proxy 项目是因为 在线试用 demo 部署在 leancloud 上, 由于 leancloud 有内存限制(256M), 所以独立了一个 proxy 项目来突破内存限制. 而 docker-compose 启动不存在内存限制问题,故不需要部署 proxy 项目
  • api 项目是一个 npm 包, 独立发布到 npm, 已经在 backend 项目的 package.json 的依赖中了
  • nmdb 项目是一个 npm 包, 独立发布到 npm npm, 已经在 backend 项目的 package.json 的依赖中了
  • devops 目录是一些启动/构建脚本

TODO

  • 歌曲进度调整
  • 歌词显示
  • 完整 docker 镜像 build
  • 完善桌面浏览器下界面样式
  • Electron 构建桌面应用
  • 音量调整
  • 设置界面, 添加渐近渐出,� 排行榜隐藏等配置