Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ansaribrahim/fix-mate-backend
Fix-Mate-Backend is a Ruby on Rails application. It's the server-side of Fix-Mate, handling database transactions, user authentication, and business logic to assist users.
https://github.com/ansaribrahim/fix-mate-backend
authentication authorization gitflow linters rails rubocop ruby testing
Last synced: about 1 month ago
JSON representation
Fix-Mate-Backend is a Ruby on Rails application. It's the server-side of Fix-Mate, handling database transactions, user authentication, and business logic to assist users.
- Host: GitHub
- URL: https://github.com/ansaribrahim/fix-mate-backend
- Owner: AnsarIbrahim
- License: mit
- Created: 2023-11-09T13:44:38.000Z (about 1 year ago)
- Default Branch: development
- Last Pushed: 2023-11-13T14:08:18.000Z (about 1 year ago)
- Last Synced: 2024-10-23T11:12:33.658Z (3 months ago)
- Topics: authentication, authorization, gitflow, linters, rails, rubocop, ruby, testing
- Language: Ruby
- Homepage:
- Size: 49.8 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Fix-Mate-Backend
# 📗 Table of Contents
- [📗 Table of Contents](#-table-of-contents)
- [👨💻 Fix Mate ](#-fix-mate-)
- [🛠 Built With ](#-built-with-)
- [Tech Stack ](#tech-stack-)
- [Key Features ](#key-features-)
- [💻 Getting Started ](#-getting-started-)
- [Prerequisites](#prerequisites)
- [Setup](#setup)
- [Installation](#installation)
- [Database Setup](#database-setup)
- [Running the App](#running-the-app)
- [👥 Authors ](#-authors-)
- [🔭 Future Features ](#-future-features-)
- [🤝 Contributing ](#-contributing-)
- [💖 Show your support ](#-show-your-support-)
- [🙏 Acknowledgments ](#-acknowledgments-)
- [📝 License ](#-license-)**Fix-Mate-Backend** is a Ruby on Rails application. It's the server-side of Fix-Mate, handling database transactions, user authentication, and business logic to assist users. **Fix Mate** is committed to making everyday life more convenient by connecting users with trusted service providers. It is a one-stop platform for finding, booking, and reviewing services, all from the comfort of your home. Users can communicate with service providers through the app, discussing specific requirements, asking questions, and confirming details.
## API
> - [Base Url](https://fixmate.onrender.com/)> - API Endpoints
- api/v1/experts
- api/v1/reservations
- api/v1/specializations
> - [API Documentation](https://fixmate.onrender.com/api-docs/index.html)## Link to Front End
> - [Live Link](https://fixmate.netlify.app/)> - [Link to Front-end Repository](https://github.com/AnsarIbrahim/FixMate)
## Kanban Board Link
> - [Link to Kanban Board](https://github.com/users/anita00001/projects/5)> - [Kanban Board Screenshot](https://user-images.githubusercontent.com/24216198/278346153-6af22972-9982-4560-ba4d-c943ffeb9330.png)
> - [Number of Team Members - 4](#-authors-)
## Entity Relationship Diagram
![fixmate_erd_digram](https://github.com/anita00001/fix-mate-backend/assets/117971223/6e6fbe33-9ac7-467d-bdea-a590ee1ea9a8)Server
Database
The key features of this project include.
- **Show all Experts**
- **Reserve an Expert**
- **Show my Reservation**
- **Add an Expert**
- **Delete an Expert**
- **Add a Specialization**
> - To get a local copy up and running, follow these steps.
### Prerequisites
Before you begin, make sure you have the following installed on your machine:
- [x] Ruby: You can download Ruby [here](https://www.ruby-lang.org/en/downloads/).
- [x] Rails: You can install Rails by running the command `gem install rails` in your terminal.
- [x] Postgres: You can install Postgresql [here](https://www.postgresql.org/download/).
- [x] A code editor (like VSCode, Sublime, Atom, etc.): You can download VSCode [here](https://code.visualstudio.com/download), Sublime [here](https://www.sublimetext.com/3), and Atom [here](https://atom.io/).
- [x] Git: You can download Git [here](https://git-scm.com/downloads).
- [x] Node.js: You can download Node.js [here](https://nodejs.org/en/download/).
> - Version Requirements:
```
ruby >= 3.2.0
rails >= 7.0
postgres >- 15.3
```
### Setup
> - To setup this project locally:
1. Open terminal in VScode.
2. Navigate to the directory where you want clone the copy of this repository.
3. Create new directory [optional].
4. Clone the repository by running the following command:
```sh
git clone https://github.com/anita00001/fix-mate-backend.git
```
5. Navigate into the cloned repository:
```sh
cd fix-mate-backend
```
### Installation
1. Install the required dependencies by running the following command:
```sh
bundle install
```
2. Delete files `/config/credentials.yml.enc` and `/config/master.key`, (if any).
3. Run the command to get the pairs of credentials and master key
```sh
rails credentials:edit
```
### Database Setup
> - To create the database, run the following command:
```sh
rails db:create
```
> - To migrate the database schema, run the following command:
```sh
rails db:migrate
```
> - Feed Sample data through seeds
```sh
rails db:seed
```
### Run Test
> - Run Linters Check with Rubocop
```sh
rubocop
```
> - Run Test with RSpec
```sh
rails db:migrate RAILS_ENV=test && rspec spec
```
### Running the App
> - To run the application, run the following command:
```sh
rails server
```
> - This will start the Rails development server and you can access the application by visiting http://localhost:4000 in your web browser.
The collaborators of this project.
👤 **Anita Sharma**
> - [GitHub](https://github.com/anita00001)
> - [LinkedIn](https://www.linkedin.com/in/anitaa-sharmaa/)
> - [Twitter](https://twitter.com/anitaa_sharmaa)
👤 **Ansar Ibrahim**
> - [GitHub](https://github.com/AnsarIbrahim)
> - [LinkedIn](https://linkedin.com/in/ansar-ibrahim/)
> - [Twitter](https://twitter.com/ansaradheeb)
👤 **MoFuhidy**
> - [GitHub](https://github.com/Mofuhidy)
> - [LinkedIn](https://www.linkedin.com/in/mo-fuhidy/)
👤 **Theodore Asimeng-Osei**
> - [GitHub](https://github.com/Theodoraldo)
> - [Twitter](https://twitter.com/AsimengOse33947)
> - [LinkedIn](https://www.linkedin.com/in/theodoreasimeng/)
- [ ] **Delete Specializations**
- [ ] **Add Admin Role**
> - Contributions, issues, and feature requests are welcome!
> - Feel free to check the [issues page](../../issues/).
> - Give a ⭐️, if you like this project!
> - We would like to thank [Microverseinc](https://github.com/microverseinc) for [Readme-template](https://github.com/microverseinc/readme-template), our code reviewer and external evaluator. We would extend our sincere gratitude to [Murat Korkmaz on Behance](https://www.behance.net/gallery/26425031/Vespa-Responsive-Redesign) for provinding the original design.
This project is [MIT](./LICENSE) licensed.