MCPcopy Index your code
hub / github.com/aelassas/bookcars

github.com/aelassas/bookcars @v8.7

Chat with this repo
repository ↗ · DeepWiki ↗ · release v8.7 ↗ · + Follow
2,344 symbols 5,428 edges 654 files 17 documented · 1%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

build test codecov loc live demo docs

BookCars

BookCars is a car rental platform with an admin panel for managing fleets and bookings, as well as a frontend and a mobile app for renting cars.

It comes with built-in support for Stripe and PayPal payment gateways, allowing you to choose the one best suited for your country or business model. If Stripe isn't available in your region, PayPal serves as a secure and reliable alternative.

BookCars supports both single-supplier and multi-supplier modes. Suppliers can manage their fleets and bookings through a dedicated admin panel. Each new supplier receives an email prompting them to create their account and gain access to the system.

The admin panel allows admins to manage suppliers, cars, countries, locations, parking spots, customers, bookings, and payments.

Customers can register through the web frontend or mobile app, search for available cars based on pickup and drop-off points and time, choose a car and complete the checkout process in a few clicks.

Quick Links

Features

Supplier & Fleet Management

  • Supplier management
  • Supplier contracts
  • Supplier search result limit
  • Ready for single or multiple suppliers
  • Car fleet management
  • Flexible time-based car availability
  • Flexible rental date and time constraints
  • Booking management
  • Vehicle scheduler
  • Auto-notification system

Pricing & Payments

  • Dynamic price calculation: hourly, daily, weekly, bi-weekly, and monthly rates
  • Date-based price rates
  • Price change rate
  • Payment management
  • Multiple payment gateways supported: Stripe, PayPal
  • Multiple payment methods: Credit Card, PayPal, Google Pay, Apple Pay, Link, Pay at the counter, Pay in full, Pay deposit

Locations & Search

  • Hierarchical locations with country, map, and parking integration
  • Location-based search with nested child location support
  • Map display for locations and parking spots

User Experience

  • Customer management
  • Multiple login options: Google, Facebook, Apple, Email
  • Multiple language support: English, French, Spanish
  • Multiple currencies support
  • Multiple pagination styles: classic (next/previous), infinite scroll
  • Push notifications

Security & Performance

  • Secure against XSS, XST, CSRF, MITM, and DDoS attacks
  • Responsive admin panel and frontend
  • Native mobile app for Android and iOS (single codebase)
  • Docker support for easy deployment and better developer experience
  • Error monitoring and performance tracing

Supported Platforms

  • iOS
  • Android
  • Web
  • Docker

Support & Contributing

If this project helped you, saved you time, or inspired you in any way, please consider supporting its future growth and maintenance. You can show your support by starring the repository (it helps increase visibility and shows your appreciation), sharing the project (recommend it to colleagues, communities, or on social media), or if you'd like to financially support the development via GitHub Sponsors (one-time or monthly), PayPal, or Buy Me a Coffee.

Open-source software requires time, effort, and resources to maintain. Your support helps keep this project alive, up-to-date, and accessible to everyone. Every contribution, big or small, makes a difference and motivates continued work on features, bug fixes, and new ideas.

Live Demo

Frontend

  • URL: https://bookcars.dynv6.net/
  • Login: jdoe@bookcars.ma
  • Password: B00kC4r5

Admin Panel

  • URL: https://bookcars.dynv6.net:3001/
  • Login: admin@bookcars.ma
  • Password: B00kC4r5

Mobile App

You can install the Android app on any Android device.

Scan this code with a device

Open the Camera app and point it at this code. Then tap the notification that appears.

How to install the Mobile App on Android

  • On devices running Android 8.0 (API level 26) and higher, you must navigate to the Install unknown apps system settings screen to enable app installations from a particular location (i.e. the web browser you are downloading the app from).

  • On devices running Android 7.1.1 (API level 25) and lower, you should enable the Unknown sources system setting, found in Settings > Security on your device.

Alternative Way

You can install the Android App by downloading the APK and installing it on any Android device.

License

BookCars is MIT licensed.

Extension points exported contracts — how you extend this code

Props (Interface)
(no doc)
packages/reactjs-social-login/src/LoginSocialPinterest/index.tsx
Window (Interface)
(no doc)
packages/disable-react-devtools/index.ts
Booking (Interface)
(no doc)
packages/bookcars-types/index.ts
ToastProps (Interface)
(no doc)
frontend/src/components/Toast.tsx
MyDoc (Interface)
(no doc)
backend/src/utils/databaseLangHelper.ts
CheckoutParams (Interface)
(no doc)
mobile/types/index.d.ts
BookingListProps (Interface)
(no doc)
mobile/components/BookingList.tsx
SettingContextType (Interface)
(no doc)
mobile/context/SettingContext.tsx

Core symbols most depended-on inside this repo

register
called by 179
mobile/app/_layout.tsx
navigate
called by 147
mobile/utils/helper.ts
close
called by 67
admin/src/components/scheduler/types.ts
useStore
called by 33
admin/src/components/scheduler/hooks/useStore.ts
handleSubmit
called by 25
admin/src/components/VehicleSchedulerFilter.tsx
fetch
called by 20
frontend/src/components/SupplierList.tsx
authHeader
called by 17
mobile/services/UserService.ts
useUserContext
called by 14
admin/src/context/UserContext.tsx

Shape

Function 1,919
Interface 336
Method 70
Enum 13
Class 6

Languages

TypeScript100%

Modules by API surface

packages/bookcars-types/index.ts69 symbols
admin/src/utils/helper.ts43 symbols
backend/src/controllers/userController.ts39 symbols
admin/src/services/UserService.ts38 symbols
frontend/src/utils/helper.ts37 symbols
frontend/src/services/UserService.ts36 symbols
packages/bookcars-helper/index.ts35 symbols
mobile/services/UserService.ts35 symbols
mobile/utils/helper.ts34 symbols
admin/src/components/scheduler/types.ts33 symbols
mobile/app/(screens)/checkout.tsx25 symbols
pre-commit.js22 symbols

Datastores touched

(mongodb)Database · 1 repos
bookcarsDatabase · 1 repos

For agents

$ claude mcp add bookcars \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page