๐ A Modern Full-Stack Solution for Regional Transport Office Operations
Digitizing citizen services โข Streamlining workflows โข Empowering authorities
Features โข Tech Stack โข Installation โข API Docs โข Contributing
A comprehensive digital platform that transforms how Regional Transport Offices operate. From license applications to vehicle registrations, challans to appointments โ everything managed through an intuitive, role-based system.
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ๐ฏ KEY HIGHLIGHTS โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ ๐ Secure JWT Authentication โ ๐ Real-time Analytics โ
โ ๐ฅ Multi-Role Access Control โ ๐ณ Integrated Payments โ
โ ๐ฑ Responsive Modern UI โ ๐ Smart Notifications โ
โ โก Lightning Fast Performance โ ๐ก๏ธ Enterprise Security โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
Self-Service Portal |
Enforcement Tools |
Processing Hub |
System Control |
|
|
|
|
| โ Implemented | ๐ง Coming Soon |
|---|---|
| ๐ JWT Authentication | ๐ง Email Notifications |
| ๐ฅ Role-Based Access (6 Roles) | ๐ฑ SMS Alerts |
| ๐ชช DL Application & Management | ๐ Advanced Analytics |
| ๐ Vehicle Registration | ๐ Document Verification |
| ๐ซ Challan Management | ๐ค AI-Powered Insights |
| ๐ Appointment Booking | ๐ Multi-language Support |
| ๐ณ Payment Processing | |
| ๐ Notifications System | |
| ๐ Analytics Dashboard | |
| ๐ข RTO Office Management |
Node.js 18+ โข PostgreSQL 15+ โข npm/yarn๐ฆ Backend Setup
# Navigate to backend
cd backend
# Install dependencies
npm install
# Configure environment
cp .env.example .env
# Edit .env with your database credentials
# Required Environment Variables
# Create a .env file in the backend directory with:
# - PORT=5000
# - DATABASE_URL=postgresql://user:pass@host:port/dbname
# - JWT_SECRET=your_jwt_secret
# - JWT_REFRESH_SECRET=your_refresh_secret
# - EMAIL_HOST=smtp.gmail.com (or other provider)
# - EMAIL_USER=your_email@gmail.com
# - EMAIL_PASSWORD=your_app_password
# Run database setup
psql -U postgres -f database_setup.sql
# Start development server
npm run dev๐ข Backend runs at http://localhost:5000
๐จ Frontend Setup
# Navigate to frontend
cd frontend
# Install dependencies
npm install
# Start development server
npm run dev๐ข Frontend runs at http://localhost:5173
- Ensure PostgreSQL service is running before starting the backend server.
- Double-check
.envvariables to avoid database connection issues. - Run backend and frontend in separate terminals during development.
- Use Node.js version 18 or above for best compatibility.
๐ฆ rto-management-system
โโโ ๐ง backend/
โ โโโ ๐ src/
โ โ โโโ ๐ฎ controllers/ # Request handlers
โ โ โโโ ๐ models/ # Database models
โ โ โโโ ๐ฃ๏ธ routes/ # API routes
โ โ โโโ ๐ก๏ธ middlewares/ # Auth & validation
โ โ โโโ ๐ง utils/ # Helper functions
โ โ โโโ ๐พ db.ts # Database connection
โ โ โโโ ๐ index.ts # Entry point
โ โโโ ๐ package.json
โ
โโโ ๐จ frontend/
โ โโโ ๐ src/
โ โ โโโ ๐งฉ components/ # Reusable UI components
โ โ โโโ ๐ contexts/ # React contexts
โ โ โโโ ๐ช hooks/ # Custom hooks
โ โ โโโ ๐ pages/ # Page components
โ โ โโโ ๐ services/ # API services
โ โ โโโ ๐ types/ # TypeScript types
โ โ โโโ ๐ฑ App.tsx # Root component
โ โโโ ๐ package.json
โ
โโโ ๐ README.md
๐ Authentication
| Method | Endpoint | Description |
|---|---|---|
POST |
/api/auth/register |
Register new user |
POST |
/api/auth/login |
User login |
POST |
/api/auth/logout |
User logout |
POST |
/api/auth/forgot-password |
Password reset |
๐ค User Management
| Method | Endpoint | Description |
|---|---|---|
GET |
/api/users/profile |
Get user profile |
PUT |
/api/users/profile |
Update profile |
GET |
/api/users |
List all users (Admin) |
๐ชช Driving License
| Method | Endpoint | Description |
|---|---|---|
POST |
/api/dl-applications |
Apply for DL |
GET |
/api/dl-applications |
View applications |
PUT |
/api/dl-applications/:id/approve |
Approve DL |
GET |
/api/driving-license |
View license |
๐ Vehicles
| Method | Endpoint | Description |
|---|---|---|
POST |
/api/vehicles |
Register vehicle |
GET |
/api/vehicles |
List vehicles |
GET |
/api/vehicles/:id |
Vehicle details |
๐ซ Challans
| Method | Endpoint | Description |
|---|---|---|
POST |
/api/challans |
Issue challan |
GET |
/api/challans |
List challans |
PUT |
/api/challans/:id/pay |
Pay challan |
| Feature | Description |
|---|---|
| ๐ JWT Tokens | Secure authentication with access & refresh tokens |
| ๐ก๏ธ RBAC | Role-Based Access Control for 6 different user types |
| ๐ Bcrypt | Industry-standard password hashing |
| ๐ซ Rate Limiting | Protection against brute force attacks |
| โ Input Validation | Comprehensive request validation |
| ๐ CORS | Configured Cross-Origin Resource Sharing |
# Import Postman collection from backend/postman_collection.json
# Refer to backend/API_TESTING_GUIDE.md for detailed instructionsContributions are welcome! Here's how you can help:
- ๐ด Fork the repository
- ๐ฟ Create a feature branch (
git checkout -b feature/amazing-feature) - ๐พ Commit your changes (
git commit -m 'Add amazing feature') - ๐ค Push to the branch (
git push origin feature/amazing-feature) - ๐ Open a Pull Request
This project is developed for educational and demonstration purposes.
โญ If you found this project helpful, please give it a star!
Made with โค๏ธ and โ