This is a fullstack project built with react. Jukebox is personalized gateway to a world of rhythm and pop. Designed with a sleek and intuitive interface, Jukebox aims to elevate your music listening experience to new heights. The purpose of this project is to learn graphql api and client request.
- Frontend state management is handled with react context api.
- Material ui handles theming, user interface and responsiveness.
- Axios handles data fetching.
- Authentication is based on JWT and stored in cookies.
- cookie-parser handles cookie authentication and storage is controlled by the server.
- Socket.io handles real time communication.
- Progressive streaming and storage is achieved through firebase.
- Background Play
- Crossfade effect
- Adaptive bitrate streaming
- React
- Material ui
- Axios
- Socket.io-client
- Moment
- Music-metadata-browser
- universal-cookie
- Grpahql
- Apollo/client
Development
- cd client
- npm install
- npm start
- Open browser at speciifed url. Most likely http://localhost:3000
Production
- npm run build
- Nodejs
- Express
- Apollo-server
- Graphql
- JWT
- Cors
Development
- npm run nodemon
- 20% away. Taking a break from jukebox...
- Refactoring and tidy-up
Please note this project is just for learning. Feel free to fork and create pull request.