neteast-cloud-music-player/README.md
2020-05-02 21:28:03 +10:00

118 lines
3.2 KiB
Markdown

# neteast-music-vue
### Deployed link:
https://neteast.netlify.com/
### It is a mobile first responsive web app for listening music from Neteast cloud platform which is using a open source API:
https://github.com/Binaryify/NeteaseCloudMusicApi
### The stack is based on Vue, VueX, VueRouter, Vuetify, Axios, PWA, SCSS, Jest, Nightwatch, Eslint, Babel and others.
## need a env file to start this app
```
.env
.env.development
VUE_APP_baseURL=Your Server URL
```
![picture 01](https://github.com/tatoMa/neteast-cloud-music-player/blob/master/01.jpg?raw=true)
![picture 02](https://github.com/tatoMa/neteast-cloud-music-player/blob/master/02.jpg?raw=true)
![picture 03](https://github.com/tatoMa/neteast-cloud-music-player/blob/master/03.png?raw=true)
Backend
- [x] compressed api by g-zip
- [x] proxy settings
Frontend
- [ ] add full PWA support?
- [ ] Progressive Loading? different layout or resources based on device types and network speed
- [ ] download music function
- [ ] redo player animation and transaction
- [ ] UX/UI logic refactor
- [ ] add Skeleton loaders
- [ ] Lyric sync
- [ ] player loop/random function
- [ ] Home page desktop view add playlist, player, and lyric page
- [ ] Notification for non-playable music
- [ ] Right player drawer for desktop view
- [ ] Dynamic switch IOS and other platform config
- [x] Fixed safari issue and related issues on IOS platform
- [x] Fixed desktop safari playing issues
- [x] Home page restructure for desktop view
- [x] theme and color settings
- [x] setting page
- [x] album page
- [x] artist page
- [x] large image adaptive loading
- [x] music progress slider click and jump to time function
- [x] Lyric display
- [x] fix Chrome security policy don't allow instantiate AudioContext before load audio source
- [x] fix music url request 403 error (by adding referrer head into index page)
- [x] reduce the bundle size and loading size(to homepage 440k total)
- [x] material icon tree-shaking (Reduce 300K after build the bundle)
- [x] message tab with styled component and function
- [x] click and play music without wipeout playlist
- [x] audio analyser and synchronizer effect by web api and drawing on canvas
- [x] playlist tab in player
- [x] player tabs and sections
- [x] music wave effect (removed)
- [x] player buttons
- [x] slider for volume control
- [x] slider for audio progress
- [x] full screen player mode
- [x] animated transition
- [x] hot music page Tabs and sections
- [x] theme switch (dark and light)
- [x] pagination for all list
- [x] add to playlist function
- [x] play all music in list function
- [x] responsive design implement
- [x] search
- [x] navigation drawer
- [x] hot music page
- [x] player controller
- [x] state management init
- [x] utils and apis
- [x] hot playlists page
### need a env file to start this app
```
.env
VUE_APP_baseURL=Your URL
```
#### Project setup
```
npm install
```
##### Compiles and hot-reloads for development
```
npm run serve
```
##### Compiles and minifies for production
```
npm run build
```
##### Run your unit tests
```
npm run test:unit
```
##### Run your end-to-end tests
```
npm run test:e2e
```
##### Lints and fixes files
```
npm run lint
```
##### Customize configuration
See [Configuration Reference](https://cli.vuejs.org/config/).