Skip to content

A list of the most played musics of Deezer, with favorites feature.

License

Notifications You must be signed in to change notification settings

Aledosim/short-listen

Repository files navigation

Short Listen

codecov cypress license


Short Listen

A small project to navigate the songs of Deezer
View Demo

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. License
  5. Contact
  6. Acknowledgements

About The Project

This is a one page application that shows you the most played musics of Deezer. With it you can search the catalog and save your favorite ones in a list. The list isn't persistent and it don't play the previews of the musics yet, but the link for the full song works. You can check it live here.

Built With

Getting Started

Just clone this repo and install it using npm.

Prerequisites

To run this project you need NodeJS (developed with v14.17.5)

Installation

  1. Clone the repo and enter the folder
    git clone https://github.com/Aledosim/short-listen
    cd short-listen
  2. Install NPM packages
    npm install

Usage

To view the page locally run the development server

npm start

Right now Deezer API responses don't have access-control-allow-origin headers. If you find troubles with CORS, try some extension for your browser. More info.

Testing

To run the unit tests execute

npm test

To run the integration tests, run after lauching the development server

npm run cypress:run

License

Distributed under the GPL3 License. See LICENSE for more information.

Contact

Alexandre do Sim - LinkedIn - aledosim@yahoo.com.br

Project Link: https://github.com/Aledosim/short-listen

Acknowledgements

This application is a Manipulaê junior front-end development challenge.

What I've learned

For this project I learned to use Redux, Styled Components and Axios. I had some difficulty structuring the Redux slices, but I discovered that it was a problem in the division of responsibilities. Redux is a great tool which guide somehow our work with his archtecture and with a lot of things to learn about it. Axios is a library easy to learn and use, with great documentation.

Right now in love with Styled Components. The possibilities to create dynamic interfaces are huge and I just started to have fun with it.

Future tasks

  • Implement music player (to listen the tracks preview)
  • A more robust API client
  • Better interface design