Giter VIP home page Giter VIP logo

musikan-node-back's Introduction

Musikan

Musikan is an open community of independent artists and music lovers similar to that of Spotify or Amazon Music. Musikan is a streaming music web application for personal use where artists can share their music and discover songs, playlists and artists.

This project was made by a team of passionate music developers using continuous integration and agile methodologies.

This app has been built with MongoDB, Express, Node, Firebase and Cloudinary on the server side, and React, Redux for the client side.

๐Ÿš€ Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

๐Ÿ“‹ Requirements

You need to install NodeJs and Install the NPM packages with npm install command. You will also be required to create accounts for: - Firebase - MongoDB Atlas - Cloudinary

๐Ÿ”ง Installation

First, you will need to clone or fork the repository into your Github account:

Fork on GitHub

frontend ->$ git clone https://github.com/AranBeitia/musikan-front --> further instructions in this link
backend -> $ git clone https://github.com/Jose1i1o/musikan-node-back

When you have all the dependencies installed you need to create two .env files, one located in client folder, one in server folder containing the new encryption keys. Please refer to the examples below:

๐Ÿฆด Project Structure

Folder structure ๐Ÿ—‚

  
โ”œโ”€โ”€ documentation // All project wireframes, PRD, and presentation files  
โ”œโ”€โ”€ server // Backend Node Server  
โ”‚ โ”œโ”€โ”€ src  
โ”‚ โ”‚ โ”œโ”€โ”€ config  
โ”‚ โ”‚ โ”œโ”€โ”€ controllers  
โ”‚ โ”‚ โ”œโ”€โ”€ db  
โ”‚ โ”‚ โ”œโ”€โ”€ middlewares  
โ”‚ โ”‚ โ”œโ”€โ”€ models  
โ”‚ โ”‚ โ”œโ”€โ”€ repositories  
โ”‚ โ”‚ โ”œโ”€โ”€ routes  
โ”‚ โ”‚ โ”œโ”€โ”€ services  
โ”‚ โ”‚ โ””โ”€โ”€ utils  
โ”‚ โ”‚ โ””โ”€โ”€ index.js
โ”‚ โ”‚ โ””โ”€โ”€ server.js  

Server-Side with nodeJS ๐Ÿ”

This back end side is our main API. Here we receive most of the requests that are sent by the front end. This API has the core functionalities of the back end such as the authentication, the database management and the use of other third party services as cloudinary. This API also interacts with the other side of our back end.

๐Ÿ—บ Project Journey

Team Objectives ๐ŸŽฏ

  • Clean & efficient Code
  • API architecture with the easiest flow for the frontend
  • Comfortable user experience
  • Safe server side
  • Transparent and fluid team communication
  • Collaborative work

Organization ๐Ÿ“†

In order to achieve all of our goals we have implemented the Scrum Agile Methodology. We divided all the process into four separated Sprints contained within 3 weeks, everyone of them with their own goals. To manage those sprints we set daily, sprint plannings and review and sprint retrospective meetings. We used Github Projects to divide our sprints, issues and tasks on boards using the Kanban structure. We also implemented a code review system in order to get all the team connected with all parts of the project.

Team Convention ๐Ÿค

Based on Agile methodologies we had daily reviews, sprint plannings and sprint reviews. This was done in order to agree on the requirements, design, develop, test, deploy and review each sprint.

๐Ÿ•ต๏ธโ€โ™‚๏ธ Resources

Main resources for the backend ๐Ÿงฌ

Support libraries ๐Ÿ“š

๐Ÿ–‡๏ธ Contributing

If you want to contribute, please fork the repository, create a new branch whit your contribution, and push the branch as a pull requests.

โœจ Contributors

Thanks goes to these superb people


Antonio Copete


Arantza Beitia


Carlos Velilla


Jose Valenzuela

This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome! [![All Contributors](https://img.shields.io/badge/all_contributors-6-orange.svg?style=flat-square)](#contributors-)

musikan-node-back's People

Contributors

jose1i1o avatar antoniocopete avatar carlosvelilla avatar

Stargazers

 avatar

Watchers

Arantza avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.