A comprehensive car management application with service booking and spare parts ordering capabilities.
- User Authentication: Secure login and registration system
- Car Management: Add, edit, and manage your vehicles
- Service Booking: Book maintenance and repair services
- Spare Parts Ordering: Order spare parts for your vehicles
- Fuel Tracking: Track fuel consumption and calculate MPG
- Expense Management: Track and categorize vehicle expenses
- Maintenance Reminders: Time and mileage-based reminders
- Document Management: Store vehicle documents with expiry alerts
- Car Rental & Sharing: Rent your car or give temporary ownership to other users
- Fleet Management: Manage multiple vehicles as a fleet with role-based access
- Fleet Services: Bulk service scheduling for fleet vehicles
- Accident Reporting: Comprehensive accident documentation with insurance tracking
- Insurance Claims: Full claim lifecycle management with payment tracking
The easiest way to run the application is using Docker:
# Start all services (MongoDB, Backend, Frontend)
docker-compose up -d
# Access the application
# Frontend: http://localhost:5173
# Backend API: http://localhost:5000For detailed Docker instructions, see DOCKER.md.
- React 18
- TypeScript
- Vite
- Tailwind CSS
- React Router
- Axios
- Node.js
- Express
- TypeScript
- MongoDB (Mongoose)
- JWT Authentication
- bcrypt
Car-management-app/
├── frontend/ # React frontend application
│ ├── src/
│ │ ├── components/
│ │ ├── pages/
│ │ ├── services/
│ │ ├── types/
│ │ └── utils/
│ └── package.json
├── backend/ # Node.js backend API
│ ├── src/
│ │ ├── models/
│ │ ├── routes/
│ │ ├── controllers/
│ │ ├── middleware/
│ │ └── config/
│ └── package.json
└── README.md
- Node.js (v18 or higher)
- MongoDB (v6 or higher)
- npm or yarn
- Clone the repository:
git clone <repository-url>
cd Car-management-app- Install backend dependencies:
cd backend
npm install- Install frontend dependencies:
cd ../frontend
npm install- Configure environment variables:
Backend (.env):
PORT=5000
MONGODB_URI=mongodb://localhost:27017/car-management
JWT_SECRET=your-secret-key-here
NODE_ENV=developmentFrontend (.env):
VITE_API_URL=http://localhost:5000/api- Start MongoDB:
mongod- Start the backend server:
cd backend
npm run dev- Start the frontend development server:
cd frontend
npm run dev- Open your browser and navigate to
http://localhost:5173
POST /api/auth/register- Register new userPOST /api/auth/login- Login userGET /api/auth/me- Get current user
GET /api/cars- Get all user carsPOST /api/cars- Add new carGET /api/cars/:id- Get car by IDPUT /api/cars/:id- Update carDELETE /api/cars/:id- Delete car
GET /api/bookings/service- Get all service bookingsPOST /api/bookings/service- Create service bookingGET /api/bookings/service/:id- Get booking by IDPUT /api/bookings/service/:id- Update bookingDELETE /api/bookings/service/:id- Cancel booking
GET /api/parts- Get all spare partsPOST /api/parts/order- Order spare partsGET /api/parts/orders- Get user's part ordersGET /api/parts/orders/:id- Get order by ID
For testing purposes:
- Email: admin@carmanagement.com
- Password: admin123
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License.
For support, email support@carmanagement.com or open an issue in the repository.