Car Rental Web Application

React.js Full Stack JSON Server

Developed Using: Create React App

Project Overview

Online Car Rental System
User Registration & Login
Browse Available Cars
Book Vehicles
Admin Dashboard Management

Project Structure

📁 car-rental-app/
📁 public/
📁 src/
📄 package.json
📄 db.json (Mock Database)

Source Folder Structure (src/)

📁 src/
📁 components/
📁 pages/
📁 context/
📁 api/
📄 App.js
📄 index.js

Components

UI Components

Navbar.js, Footer.js, Layout.js

Logic Components

PrivateRoute.js

Purpose: Reusable UI & Route Protection

Pages

Home About Cars Booking Login Register AdminDashboard UserDashboard

Authentication System

AuthContext.js (Global State)
PrivateRoute for protected pages
Secure Login & Register functionality
User Visits Page
Protected Route?
Yes
Authenticated?
No
Render Page
No
Redirect to Login

API & Database

axios.js for API calls
db.json as mock backend
JSON Server for REST API

Key Features

Car Listing

Dynamic browsing with filters

Booking System

Streamlined vehicle reservation

Admin Controls

Fleet and user management

Responsive

Mobile-first adaptive design

Technologies Used

React.js React Router Context API Axios JSON Server CSS3

Conclusion

This Car Rental Application demonstrates:

Component-Based Architecture
Route Protection & Auth Handling
Full CRUD Operations
Real-world Project Structure