{"id":17560268,"url":"https://github.com/farida-hamid/melodyrentals-backend","last_synced_at":"2026-03-10T07:05:06.690Z","repository":{"id":65465802,"uuid":"591234385","full_name":"Farida-Hamid/MelodyRentals-BackEnd","owner":"Farida-Hamid","description":"Melody Rentals is a musical instrument rental application. Built with: Ruby on Rails, API, JWT-Device, and RSPEC.","archived":false,"fork":false,"pushed_at":"2023-02-04T05:59:45.000Z","size":173,"stargazers_count":4,"open_issues_count":1,"forks_count":3,"subscribers_count":2,"default_branch":"dev","last_synced_at":"2025-04-24T06:12:41.182Z","etag":null,"topics":["jwt-authentication","rails-api","ruby"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Farida-Hamid.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2023-01-20T08:51:50.000Z","updated_at":"2023-05-11T08:04:09.000Z","dependencies_parsed_at":"2023-02-14T00:01:43.841Z","dependency_job_id":null,"html_url":"https://github.com/Farida-Hamid/MelodyRentals-BackEnd","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Farida-Hamid%2FMelodyRentals-BackEnd","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Farida-Hamid%2FMelodyRentals-BackEnd/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Farida-Hamid%2FMelodyRentals-BackEnd/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Farida-Hamid%2FMelodyRentals-BackEnd/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Farida-Hamid","download_url":"https://codeload.github.com/Farida-Hamid/MelodyRentals-BackEnd/tar.gz/refs/heads/dev","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250573354,"owners_count":21452352,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["jwt-authentication","rails-api","ruby"],"created_at":"2024-10-21T11:24:21.052Z","updated_at":"2026-03-10T07:05:01.659Z","avatar_url":"https://github.com/Farida-Hamid.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ca name=\"readme-top\"\u003e\u003c/a\u003e\n\n\u003c!--\nHOW TO USE:\nThis is an example of how you may give instructions on setting up your project locally.\n\nModify this file to match your project and remove sections that don't apply.\n\nREQUIRED SECTIONS:\n- Table of Contents\n- About the Project\n  - Built With\n  - Live Demo\n- Getting Started\n- Authors\n- Future Features\n- Contributing\n- Show your support\n- Acknowledgements\n- License\n\nAfter you're finished please remove all the comments and instructions!\n--\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n  \u003cimg src=\"./IMG_4089.png\" alt=\"logo\" width=\"140\"  height=\"auto\" /\u003e\n  \u003cbr/\u003e\n\n\u003c/div\u003e\n\n\u003c!-- TABLE OF CONTENTS --\u003e\n\n# 📗 Table of Contents\n\n- [📖 About the Project](#about-project)\n  - [\u003cimg src=\"https://emojipedia-us.s3.dualstack.us-west-1.amazonaws.com/thumbs/320/whatsapp/326/toolbox_1f9f0.png\" width=\"20\" height=\"20\"/\u003e Built With](#built-with)\n    - [Tech Stack](#tech-stack)\n    - [Key Features](#key-features)\n    - [Website Mockup 📱 💻 🖥️](#screenshots)\n    - [🖺 Entity Relationship Diagram](#er-diagram)\n  - [\u003cimg src=\"https://user-images.githubusercontent.com/101523582/215735670-fbaca35e-fb40-4002-8a64-6a1a6ff66120.png\" width=\"23\" height=\"20\"/\u003e Kanban Board](#kanban-board)\n  - [\u003cimg src=\"https://upload.wikimedia.org/wikipedia/commons/thumb/a/a7/React-icon.svg/539px-React-icon.svg.png\" width=\"23\" height=\"20\"/\u003e React Frontend](#react-frontend)\n  - [\u003cimg src=\"https://emojipedia-us.s3.amazonaws.com/source/microsoft-teams/337/spiral-notepad_1f5d2-fe0f.png\" width=\"23\" height=\"20\"/\u003e API Documentation](#api-docs)\n  - [🚀 Live Demo](#live-demo)\n  \n- [💻 Getting Started](#getting-started)\n  - [Setup](#setup)\n  - [Prerequisites](#prerequisites)\n  - [Install](#install)\n  - [Usage](#usage)\n  - [Run tests](#run-tests)\n  - [Deployment](#triangular_flag_on_post-deployment)\n- [👥 Authors](#authors)\n- [🔭 Future Features](#future-features)\n- [🤝 Contributing](#contributing)\n- [⭐️ Show your support](#support)\n- [🙏 Acknowledgements](#acknowledgements)\n- [❓ FAQ](#faq)\n- [📝 License](#license)\n\n\u003c!-- PROJECT DESCRIPTION --\u003e\n\n# 📖 MelodyRentals Backend \u003ca name=\"about-project\"\u003e\u003c/a\u003e\n![Melody Rentals-logo](./IMG_4089.png)\n\n**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).\n\n## 🛠 Built With \u003ca name=\"built-with\"\u003e\u003c/a\u003e\n\n### Tech Stack \u003ca name=\"tech-stack\"\u003e\u003c/a\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eClient\u003c/summary\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"https://reactjs.org/\"\u003eReact.js\u003c/a\u003e\u003c/li\u003e\n  \u003c/ul\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eServer\u003c/summary\u003e\n  \u003cul\u003e\n    \u003cli\u003eRails\u003c/li\u003e\n  \u003c/ul\u003e\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eDatabase\u003c/summary\u003e\n  \u003cul\u003e\n    \u003cli\u003e\u003ca href=\"https://www.postgresql.org/\"\u003ePostgreSQL\u003c/a\u003e\u003c/li\u003e\n  \u003c/ul\u003e\n\u003c/details\u003e\n\n\u003c!-- Features --\u003e\n\n### Key Features \u003ca name=\"key-features\"\u003e\u003c/a\u003e\n\n- **[Musical Instrumetns List endpoint]**\n- **[Devise authentication to access Reservations]**\n- **[JWT Authorization upon login and register]**\n- **[Admin Users can add and remove instruments]**\n- **[Authenticated Users can reserve instruments]**\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## Website Mockup 📱 💻 🖥️ \u003ca name=\"screenshots\"\u003e\u003c/a\u003e\n\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- Kanban Board --\u003e\n## \u003cimg src=\"https://cdn-icons-png.flaticon.com/512/5360/5360804.png\" width=\"23\" height=\"20\"/\u003e Kanban Board \u003ca name=\"kanban-board\"\u003e\u003c/a\u003e\n\n- We are a **group of 5 people**, So we have devided each task for track of the project.\n###  Kanban Board\n - [Kanban Board ](https://github.com/users/Farida-Hamid/projects/11)\n\n\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- API Docs --\u003e\n\n## \u003cimg src=\"https://emojipedia-us.s3.amazonaws.com/source/microsoft-teams/337/spiral-notepad_1f5d2-fe0f.png\" width=\"23\" height=\"20\"/\u003e API Documentation\u003ca name=\"api-docs\"\u003e\u003c/a\u003e\n\n- The API documentation of the project [Melody Rentals API-Docs](http://127.0.0.1:3000/api-docs/index.html)\n![api-docs](https://user-images.githubusercontent.com/101523582/215738304-fc6826cc-802d-45e6-b12b-7af872e623f1.png)\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- ER DIAGRAM--\u003e\n## :card_index: Entity Relationship Diagram \u003ca name=\"er-diagram\"\u003e\u003c/a\u003e\n![er-diagram](https://user-images.githubusercontent.com/101523582/215735670-fbaca35e-fb40-4002-8a64-6a1a6ff66120.png)\n\n\u003c!-- React Frontend --\u003e\n## \u003cimg src=\"https://upload.wikimedia.org/wikipedia/commons/thumb/a/a7/React-icon.svg/539px-React-icon.svg.png\" width=\"23\" height=\"20\"/\u003e React Frontend \u003ca name=\"react-frontend\"\u003e\u003c/a\u003e\n- The Frontend part of the project [Melody Rentals Frontend](https://github.com/Farida-Hamid/MelodyRentals-FrontEnd)\n\n## 🚀 Live Demo \u003ca name=\"live-demo\"\u003e\u003c/a\u003e\n\n# for the API\n- [Live Demo :rocket:](https://melody-rentals.onrender.com/api/v1) :smiley:\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- GETTING STARTED --\u003e\n## 💻 Getting Started \u003ca name=\"getting-started\"\u003e\u003c/a\u003e\n\nTo get a local copy up and running, follow these steps.\n### Prerequisites\n\nIn order to run this project you need:\n`Git` and `Ruby`\n```\n gem install rails\n```\n\n### Install\n\nInstall this project with:\n\n```sh\n  bundle install\n```\n- Generate a secret key using `rails secret`\n- Create a  `.env` file with the following content:\n```\nPOSTGRES_USER=postgres\n# If you declared a password when creating the database:\nPOSTGRES_PASSWORD=YourPassword\nPOSTGRES_HOST=localhost\nPOSTGRES_DB=Hello_Rails_Backend_development\nPOSTGRES_TEST_DB=Hello_Rails_Backend_test\n# Devise secret key\nDEVISE_JWT_SECRET_KEY=Secret Key you generated\n```\n\nCreate Database (Mandatory)\n\n```\nrails db:create\n```\n\nIf you have made a migration then run this command\n\n```\nrails db:migrate\n```\n```\nrails db:seed\n```\n### Usage\n\nTo run the project, execute the following command:\n\n```sh\n   rails s -p 3001 # # for serving the API on localhost:3001\n```\n\nRun tests\n```\nbundle exec rspec\n```\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- AUTHORS --\u003e\n\n## 👥 Authors (5 Micronauts) \u003ca name=\"authors\"\u003e\u003c/a\u003e\n\n👤 **Farida Hamid**\n\n- LinkedIn: [LinkedIn](https://linkedin.com/in/farida-hamid)\n- GitHub: [@Farida-Hamid](https://github.com/Farida-Hamid)\n\n\n👤 **Megha Bodke**\n\n- GitHub: [@megha-n-bodke](https://github.com/megha-n-bodke)\n- LinkedIn: [Megha Bodke](https://www.linkedin.com/in/megha-bodke/)\n\n\n👤 **Tracy Musongole**\n\n- GitHub: [@TracyMuso](https://github.com/TracyMuso)\n- LinkedIn: [Tracy Musongole](https://www.linkedin.com/in/tracy-muso/)\n\n\n👤**Elie Harfouche**\n\n- GitHub: [@X-Elie-X](https://github.com/X-Elie-X)\n- LinkedIn: [Elie Harfouche](https://www.linkedin.com/in/elie-m-harfouche/)\n\n👤 **Bantealem Geto**\n- GitHub: [Bantealem](https://github.com/Bantealem)\n- Twitter: [Bantealem](https://twitter.com/BantealemG)\n- LinkedIn: [Bantealem](https://www.linkedin.com/in/bantealem-geto-a301b9213/)\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- CONTRIBUTING --\u003e\n\n## 🤝 Contributing \u003ca name=\"contributing\"\u003e\u003c/a\u003e\n\nContributions, issues, and feature requests are welcome!\n\nFeel free to check the [issues page](https://github.com/Farida-Hamid/MelodyRentals-BackEnd/issues).\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- SUPPORT --\u003e\n\n## ⭐️ Show your support \u003ca name=\"support\"\u003e\u003c/a\u003e\n\nGive a ⭐️ if you like this project!\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- ACKNOWLEDGEMENTS --\u003e\n\n## 🙏 Acknowledgments \u003ca name=\"acknowledgements\"\u003e\u003c/a\u003e\n\nI would like to thank:\n- [Microverse](https://www.microverse.org/)\n- Code Reviewers\n\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- FAQ (optional) --\u003e\n\n## ❓ FAQ \u003ca name=\"faq\"\u003e\u003c/a\u003e\n\n- **How I can install rails?**\n\n  - You can follow the [official guide](https://guides.rubyonrails.org/getting_started.html#installing-rails) to install rails. If you have gem installed, you can run `gem install rails` to install rails.\n\n- **How I can run this project?**\n\n  - 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](https://www.postman.com/) or [Insomnia](https://insomnia.rest/). You can also use the [API Documentation](http://127.0.0.1:3000/api-docs/index.html) to test the endpoints. \n\n- **How I can run tests?**\n  \n    - After cloning repository, run `bundle` and then run `rspec` to run the tests. \n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\u003c!-- LICENSE --\u003e\n\n## 📝 License \u003ca name=\"license\"\u003e\u003c/a\u003e\n\nThis project is [MIT](./LICENSE) licensed.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffarida-hamid%2Fmelodyrentals-backend","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffarida-hamid%2Fmelodyrentals-backend","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffarida-hamid%2Fmelodyrentals-backend/lists"}