Skip to content

Latest commit

 

History

326 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📔 Description

A Music player made with React and Node.js

Listen to your favorite artists and bands, discover songs on other people playlists and bring them to yours!

Table of Contents

Requirements

This project runs with some specific technologies that require a previous installation to work with it:

Function Technology Required
Code editor VS Code True*
Mongo DataBase MongoDB True
MongoDB Visual Interface Visual BD Helper True
PHP Myadmin PHP MyAdmin True
Package manager for PHP Composer True
Cloud file manager Cloudinary True

*You can choose between dozens of possibilities, VSCode is only a recommendation

ENV files

It's required to create .env files to store your environment and sensitive information.

For the client .env is necessary to add the Firebase configuration and credentials, your Cloudinary path and credentials, and your access path to both Server.

For main server .env is necessary to add the Firebase Admin credentials, your Mongo Database connection information and the path to the Client.

For the secondary server .env it is required to have the data related to the Laravel configuration and to the SQL Database connection.

Getting Started

  1. Clone the repository

    $ git clone https://github.com/AdrianSerranoRojas/Music-Player-Musikfy.git
    
  2. Installing

    $ node install
    
  3. Start

  • Open terminals for client

    $ node client
    
  • Open terminal for NodeJs server (don't forget to initialise MongoDB)

    $node server
    
  • And last but not least open terminal for Laravel server (and remember to start your server package)

    $ node stats
    

Dependencies

Contents and Branches Naming Strategy

This project has a naming strategy for its different elements to facilitate and unify the work between its Collaborators. These conventions are presented below.

Branches

Branches were created for different category main components and have been cleaned up. The category word tries to be descriptive and define the content of the branch: Playlist , UITheme, MusicPlayer. By this rule this is a real case of the Branch name that you can find in this same project: origin/MusicPlayer.

Structural elements

Structural element names have a strict policy to be simple, clear and descriptive. This element includes React components and pages as well as all the main elements of Servers, and normally have to be written with camelCase convention. The exception to this are React components, who are written using PascalCase convention.

Style elements

Style elements, that includes all scss files and classes have the same rules: lowercase. The names need to be descriptive but short.

Screenshots

  • Log in with your email or a Google Account with total security.

  • Save your most loved songs: you can find all of them on your Liked Songs section!

[Image from Gyazo]

  • Create your personal Playlist and add as many tracks as you want.

[Image from Gyazo]

  • You don't remember the title of that song? Search by song name, playlist or band!

[Image from Gyazo]

  • Upload your own songs, only for your ears to enjoy.
  • Are you an artist? Share your music with the world!

[Image from Gyazo]

Technology used

Front-end

React Sass JS Firebase

Back-end

Node.js Express Nodemon MongoDB MySQL Docker PHP Firebase Cloudinary Laravel Composer Puppeteer

About

App to play, upload share music and more.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages