Skip to content

iKozay/RentACar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A Car-rental Web Application

Overview

The Car-rental Web Application is designed to simplify the vehicle rental process for customers, offering a straightforward interface. Users can browse and reserve vehicles based on location, dates, and specific preferences. The system accommodates customization with options to modify or cancel reservations. Customer Service Representatives manage check-in, check-out, and payment processes, ensuring a smooth experience. System Administrators handle backend operations, including managing vehicles, user accounts, and reservations. Overall, the application prioritizes user-friendly interactions to enhance the efficiency and convenience of renting vehicles.

Table of Contents

  1. Team & Roles
  2. Technologies
  3. Features
  4. Installation
  5. Usage
  6. Contributing
  7. License
  8. Contact

Team & Roles

  • Zeiad Badawy (iKozay) - Scrum master/Front-end DEV
  • Mohamed Saidi (Mohadgb) - Backend DEV
  • Miskat Mahmud (codedsami) - Backend DEV
  • Matteo Sansone (MSan35) - Front-end DEV
  • Abdel-Rahman Khalifa (AbdelrahmanWM) - Fullstack DEV

Technologies

The following are the major frameworks we will be using to develop the project:

  • React
  • Node.js
  • Express.js
  • Mongo DB

See Technology Stack in Wiki for more details.

Features

Customer Features:

  1. User Registration and Authentication: Allow customers to create accounts and log in securely.

  2. Profile Management: Enable users to update personal information and preferences.

  3. Vehicle Search and Filtering: Implement an intuitive search interface with filters for type, category, and price range.

  4. Reservation Management: View, modify, and cancel reservations easily.

  5. Location-based Services: Provide a branch locator using postal codes or airport information.

  6. Extra Equipment Add-Ons: During the reservation process, offer additional equipment at an extra cost.

  7. Rating and Reviews: Allow customers to provide feedback and ratings for rented vehicles and overall experience.

Customer Service Representative (CSR) Features:

  1. Check-in Process: Manage the check-in process for customers with or without reservations.

  2. Reservation Confirmation: Confirm reservations, verify customer details, and process payments.

  3. Check-out Process: Facilitate the return process, inspect the vehicle, and process final billing.

System Administrator Features:

  1. Vehicle Management: CRUD operations for adding, updating, and removing vehicles from the system.

  2. User Account Management: CRUD operations for managing user accounts.

  3. Reservation Management: CRUD operations for handling reservations efficiently.

Additional Features (To Be Reviewed):

  1. User Loyalty Program: Implement a loyalty program to reward customers for repeated business.

  2. Addition of second driver: Allow customers to add a second driver to their rental reservation.

Installation

Providing step-by-step instructions on how to install and set up the project locally. We need to include any dependencies or prerequisites needed.

Example Of Installation Steps:

Follow these steps to set up and run the project:

  1. Clone the Repository: Clone the project repository to your local machine using the following command:
    git clone https://github.com/iKozay/RentACar.git
  2. Change to the Project Directory: Navigate into the project src directory with the command:
    cd RentACar/src
  3. Install Dependencies: Install project dependencies using the following command:
    npm run install:all
  4. Run Frontend and Backend servers: Run the following command in the src directory:
    npm run dev
  5. The following variables are required inside /backend/.env:
    • MONGO_DB
    • JWT_SECRET
    • SESSION_SECRET
    • EMAIL_USER
    • EMAIL_PASS

Usage

Clearly explaining how users can use our web application. We will need to include information on how to navigate the interface, perform actions, and any other relevant usage details.

Contributing

Please review the Git Rules section on our Wiki page for guidelines on contributions

License

Apache-2.0 license

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published