A modern, full-featured car rental application built with React, Redux, and Tailwind CSS. Browse, filter, book, and manage car rentals with an intuitive user interface and seamless experience.
-
User Authentication
- Secure login and registration with JWT tokens
- Token refresh mechanism for session management
- Protected routes for authenticated users
-
Car Browsing & Search
- Advanced filtering by size, category, price range, and features
- Real-time search with debounce optimization
- Detailed car information with images and specifications
- Feature badges with color coding
-
Booking System
- Intuitive date range picker for rental periods
- Real-time price calculation
- Booking confirmation with rental details
- View rental history and booking status
-
User Profile
- View personal information and contact details
- Track active and past rentals
- Beautiful card-based rental history
- User statistics dashboard
-
Responsive Design
- Mobile-first approach
- Sidebar toggle for small screens
- Adaptive layouts for all device sizes
- Touch-friendly navigation
-
Animations & Interactions
- Smooth page transitions with Framer Motion
- Hover effects and interactive elements
- Scroll reveal animations
- Loading states and feedback
- React 18 - UI library
- Redux Toolkit - State management
- React Router v6 - Client-side routing
- Tailwind CSS - Utility-first styling
- Framer Motion - Animation library
- Axios - HTTP client
- JWT Decode - Token decoding
- Lucide React - Icon library
- Vite - Build tool
- RESTful API with Django/DRF
- JWT authentication
- Token-based authorization
- Protected API endpoints
- Node.js (v16 or higher)
- npm or yarn package manager
- Backend API running (see Backend Setup)
- Clone the repository
git clone https://github.com/yourusername/RentaCar.git
cd RentaCar