Skip to content

The project is based on an app to book an appointment to try a motorcycle. and follow the given design of the website but with personalized content for making a car reservation app

License

Notifications You must be signed in to change notification settings

Abdelaziz-Mahdi/Full_Stack_Capstone_Back_End

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Full_Stack_Capstone_Back_End

📗 Table of Contents

📖 Car Reservation App

The project is based on an app to book an appointment to try a motorcycle. and follow the given design of the website but with personalized content for making a car reservation app, this is the project back-end, it's used as an API for the front-end found here.

Kanban board

This project is made up of 5 participants.

@JavierAybar

@Gh-Reza

@Abdelaziz-Mahdi

@Marcraphael12

@everinurmind

🛠 Built With

See the React Application

Tech Stack

Client
Server
Database

Key Features

  • The user logs in to the website by typing the Email and Password.

  • In the navigation panel, the user can see links to:

  • "Items list".

  • "Reserve" form.

  • "My reservations".

  • "Add items".

  • "Delete items" (the link is visible to everybody).

  • On the main page, the user can see a list of motorcycles/doctors/classes/items that you selected as a theme. List

  • When the user selects a specific item, they can see the details page with its full description.

  • On the details page, the user can click the "Reserve" button.

  • When the user clicks the "Add item" link in the navigation panel they can see a form for adding a new item.

  • Make the app responsive, creating both mobile and desktop versions.

  • When the user clicks the "Delete item" link in the navigation panel they can see a list of all items with title and "Delete" button.

  • When the user clicks the "Delete" button, the selected item is marked as removed and does not show on the main list anymore.

  • To reserve an appointment, the user has to select a date and city (username and selected item are auto-filled).

  • Have all necessary inputs.

  • The user can access the "Reserve" page from the navigation panel. In that case, only the username is auto-filled.

  • When the user clicks the "My reservations" link in the navigation panel they can see a list of their reservations (with information about item name, date, and city).

  • Have full documentation for the API.

  • Implement proper user authentication from the front end to the server.

  • The "Add item" and "Delete item" links are accessible only by users who are admins.

(back to top)

💻 Getting Started

Diagram

See The ERD diagram

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

Install

Install this project with:

  bundle install

Setup Database by running these commands:

  1. Remove config/master.key and config/credentials.yml.enc if they exist.
rm config/master.key config/credentials.yml.enc
  1. Run in the terminal:
EDITOR=code rails credentials:edit 
  1. Close the editor that opens.
  2. This command will create a new master.key and credentials.yml.enc if they do not exist.
  rails db:create
  rails db:migrate

Usage

To run the project, execute the following command:

  rails server

Linters

Use this command to fix Rubocop Linter Errors:

  rubocop -A

Use this command to fix Stylelint Errors:

  npx stylelint "**/*.{css,scss}" --fix

👥 Authors

👤 Javier Aybar

👤 Marc Raphael

👤 Reza Merzaie

👨🏼‍🚀 Abdelaziz Mahdi 🐱‍👤

👤 Nurbol Sultanov

(back to top)

🔭 Future Features

  • Add about page.

(back to top)

🤝 Contributing

Contributions, issues, and feature requests are welcome!

Feel free to check the issues page.

(back to top)

🙏 Acknowledgments

Vespa - Responsive Redesign by Murat Korkmaz

(back to top)

📝 License

This project is MIT licensed.

(back to top)

About

The project is based on an app to book an appointment to try a motorcycle. and follow the given design of the website but with personalized content for making a car reservation app

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Ruby 92.6%
  • Batchfile 4.1%
  • Dockerfile 2.7%
  • Other 0.6%