Overview - aelassas/bookcars GitHub Wiki

In this section, you'll see the main pages of the frontend, the admin panel, and the mobile app.

Frontend

From the frontend, the user can search for available cars, choose a car, and checkout.

Below is the main page of the frontend where the user can choose pickup and drop-off points and time, and search for available cars.

Frontend Main

Below is the search result of the main page where the user can choose a car for rental.

Frontend Search Results

Below is the checkout page where the user can set rental options and checkout.

If the user is not registered, they can checkout and register at the same time. They will receive a confirmation and activation email to set their password if not registered yet.

Frontend Checkout

Below is the sign-in page. On production, authentication cookies are httpOnly, signed, secure, and strict sameSite to prevent XSS, CSRF, and MITM attacks. Authentication cookies are also protected against XST attacks via a custom middleware.

Frontend Sign In

Below is the sign-up page.

Frontend Sign Up

Below is the page where the user can see and manage their bookings.

Frontend Bookings

Below is the page showing booking details.

Frontend Booking Details

Below is the contact page.

Frontend Contact

Below is the car rental locations page.

Frontend Locations

Below is the page where the customer can see and manage their notifications.

Frontend Notifications

There are other pages, but these are the main pages of the frontend.

Admin Panel

BookCars is supplier oriented, meaning there are three types of users:

  • Admin: Has full access to the admin panel; can do everything.
  • Supplier: Has restricted access; can manage only their cars and bookings.
  • User: Has access only to the frontend and mobile app; cannot access the admin panel.

BookCars supports multiple suppliers. Each supplier manages their fleet and bookings via the admin panel. It also works with a single supplier if needed.

From the admin panel, admin users can create and manage suppliers, cars, locations, users, and bookings.

When an admin creates a new supplier, the supplier automatically receives an email to create their account and access the admin panel.

Below is the admin panel sign-in page.

Admin Panel Sign In

Below is the dashboard page where admins and suppliers can see and manage bookings.

Admin Panel Dashboard

Below is the vehicle scheduler page.

Admin Panel Scheduler

Below is the car fleet management page.

Admin Panel Fleet

Below is the page to create new cars by providing images and info.
For car options: set 0 for free options, set a price for paid options, or leave empty to exclude.

Admin Panel Create Car

Below is the page to edit cars.

Admin Panel Edit Car

Below is the page where admins manage platform users.

Admin Panel Manage Users

Below is the booking edit page.

Admin Panel Edit Booking

There are other pages, but these are the main ones in the admin panel.

Mobile App

From the mobile app, users can search for available cars, select a car, and checkout.

Users can also receive push notifications when their booking status updates.

Mobile Main 1 Mobile Main 2 Mobile Main 3

Below is the search result page where the user can choose a car for rental and proceed to checkout.

Mobile Search 1 Mobile Search 2 Mobile Search 3 Mobile Search 4

Below are the sign in and sign up pages.

Mobile Sign In Mobile Sign Up 1 Mobile Sign Up 2

Below are pages where the user can see and manage their bookings.

Mobile Bookings 1 Mobile Bookings 2 Mobile Bookings 3 Mobile Bookings 4 Mobile Bookings 5

Below are pages where the user can update profile info, change password, and see notifications.

Mobile Profile 1 Mobile Profile 2 Mobile Profile 3 Mobile Profile 4

That's it for the main pages of the mobile app.

⚠️ **GitHub.com Fallback** ⚠️