
Carento — Car Rental System
Carento is a modern, OOP-based full-stack multi-vendor car booking platform built using FastAPI (Python) on the backend and React.js on the frontend. It follows a clean, scalable, and modular architecture, organizing the application with object-oriented design principles for API logic, services, and database models.
Backend Highlights
- Architecture: OOP-based FastAPI backend structured with dedicated service and model layers.
- Database Integration: Asynchronous PostgreSQL integration utilized alongside SQLModel.
- Custom Security: Custom JWT authentication and authorization built entirely without external libraries.
- Dynamic Access: Strict Role-based access control separating Vendor and Customer workflows.
- API Design: Versioned RESTful APIs designed following industry best practices.
Frontend Features
- Modern UI: Built with React.js and cleanly styled using Shadcn UI.
- Advanced Routing: React Router DOM implementation utilizing nested layouts powered by
Outlet. - State Management: Context API leveraged to seamlessly manage JWT authentication and secure route protection.
- Adaptive Interface: Role-aware dashboards that dynamically change based on whether the logged-in user is a Customer or a Vendor.
Main Modules
- Vehicles: Comprehensive, vendor-specific CRUD operations for managing car listings and inventory.
- Authentication: Secure signup, login, profile management, and account deletion functionality for both Customers and Vendors.
- Bookings: End-to-end car booking system featuring distinct, user-specific booking histories for vendors and customers.
- Reviews: An authenticated user review and rating system dedicated to rented vehicles.
- Wallet: Digital wallet integration allowing users to add balance and view detailed transaction histories.
Technologies and Skills
- Core Stack: Python, FastAPI, React.js, PostgreSQL, SQLModel, JavaScript
- Architecture & Design: Object-Oriented Programming (OOP), Full-Stack Architecture, REST APIs, Asynchronous Programming
- Frontend: Shadcn UI, React Router DOM, Context API
- System Concepts: Custom Authentication, Role-Based Access Control