MelodyRentals-BackEnd

Melody Rentals is a musical instrument rental application. Built with: Ruby on Rails, API, JWT-Device, and RSPEC.

MIT License

Stars
4

📗 Table of Contents

📖 MelodyRentals Backend

Melody Rentals Backend is a musicial instruments rental application where the user can register new accounts, login and reserve a set of different instruments. It is built and connected by using two different repos, including Back-end(Rails) and Front-end(React/Redux).

🛠 Built With

Tech Stack

Key Features

  • [Musical Instrumetns List endpoint]
  • [Devise authentication to access Reservations]
  • [JWT Authorization upon login and register]
  • [Admin Users can add and remove instruments]
  • [Authenticated Users can reserve instruments]

Website Mockup 📱 💻 🖥️

Kanban Board

  • We are a group of 5 people, So we have devided each task for track of the project.

Kanban Board

API Documentation

📇 Entity Relationship Diagram

React Frontend

🚀 Live Demo

for the API

💻 Getting Started

To get a local copy up and running, follow these steps.

Prerequisites

In order to run this project you need: Git and Ruby

 gem install rails

Install

Install this project with:

  bundle install
  • Generate a secret key using rails secret
  • Create a .env file with the following content:
POSTGRES_USER=postgres
# If you declared a password when creating the database:
POSTGRES_PASSWORD=YourPassword
POSTGRES_HOST=localhost
POSTGRES_DB=Hello_Rails_Backend_development
POSTGRES_TEST_DB=Hello_Rails_Backend_test
# Devise secret key
DEVISE_JWT_SECRET_KEY=Secret Key you generated

Create Database (Mandatory)

rails db:create

If you have made a migration then run this command

rails db:migrate
rails db:seed

Usage

To run the project, execute the following command:

   rails s -p 3001 # # for serving the API on localhost:3001

Run tests

bundle exec rspec

👥 Authors (5 Micronauts)

👤 Farida Hamid

👤 Megha Bodke

👤 Tracy Musongole

👤Elie Harfouche

👤 Bantealem Geto

🤝 Contributing

Contributions, issues, and feature requests are welcome!

Feel free to check the issues page.

⭐️ Show your support

Give a ⭐️ if you like this project!

🙏 Acknowledgments

I would like to thank:

❓ FAQ

  • How I can install rails?

    • You can follow the official guide to install rails. If you have gem installed, you can run gem install rails to install rails.
  • How I can run this project?

    • After cloning repository, run bundle and then run rails s with option argument -p 3001. This will run the server on localhost:3001. You can change the port number if you want. Then you can use any API client to test the endpoints. For example, you can use Postman or Insomnia. You can also use the API Documentation to test the endpoints.
  • How I can run tests?

    • After cloning repository, run bundle and then run rspec to run the tests.

📝 License

This project is MIT licensed.

Related Projects