Skip to content

A "music search" web application that let users search for an Artist, then inspect this Artist's Albums and related Tracks.

License

Notifications You must be signed in to change notification settings

jcarva/spotify-search

Repository files navigation

Have a question or suggestion?

Contact me on Linkedin, send an email to [email protected], or create a pull request on this project.


spotify-search

A "music search" web application, using a few named techs, the app let users search for an Artist, then inspect this Artist's Albums and related Tracks.

Actually hosted on: http://spotify-search.s3-website.us-east-2.amazonaws.com


Index


Creation Environment

This project is currently developed in a Linux/GNU Ubuntu 16.04 LTS x86_64 OS, using Visual Studio Code as IDE.

Stack


Design Goals

  • Use Cutting-Edge Technologies
  • Best Programming Techniques
  • Babel 6 with Webpack and Hot Loader
  • Fast testing with mocked-out DOM
  • Separate Smart and Dumb components
  • Use Flow to obtain a safe Javascript environment
  • Use Spotify Web API JS as lightweight wrapper for the Spotify Web API
  • Use only modern native CSS features to style the whole application. e.g. FlexBox, CSS Grid and etc.

API

This application consumes data from the following services:


Available Pages

Page URL Description
Home / Main page of application to show the fetched group of artists
Artist /artists/:artistId Page that contains artist's details
Album /albums/:albumId Page that contains album's details

Getting Started

Install yarn to a better package management

$ npm install --global yarn

Install application dependencies

$ yarn install

Follow the official Spotify: API tutorial that shows how to create a application that accesses user-related data through the Spotify Web API.

During the tutorial you need add any Redirect URIs that the Spotify Accounts service could call when authentication process completes. For spotify-search in development you must add http://localhost:3000/login and http://<PRODUCTION_URL>/login for production environments.

After the tutorial you need to configure the .env file with the Spotify application's client ID.


Local Commands

In this current section you can find all commands to run the application in your machine. All the commands also are in the scripts section of package.json.

Development

$ yarn start

Navigate to http://localhost:3000/ to view the app.

Build

$ yarn build

The above command is used to build the production files.

Input: src/index.js and public/index.html

Output: build/

JavaScript Lint

$ yarn lint

This above command is used to identifying and reporting on patterns in JavaScript on the specified directory.

Flow lint

$ yarn flow

This above command is used to identifying and reporting on patterns in Flow on the specified files.

Test

$ yarn test

This above command is used to run all test in the entire project.


Contributing

  1. Fork it
  2. Create your feature branch with specs (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

Contributors


Style Guide

Some parts of this project follow the style guide from React Redux Universal Hot Example


License

This project is licensed under the terms of the GNU GENERAL PUBLIC license.

You can check out the full license here


About

A "music search" web application that let users search for an Artist, then inspect this Artist's Albums and related Tracks.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published