Skip to content
driver-scheduling-system GitHub Details, Stars and Alternatives | OpenRepoFinder
Home / Repositories / Senior-Architecture/driver-scheduling-system Senior-Architecture / repository
driver-scheduling-system Full-stack Driver Scheduling System for managing drivers and delivery routes in a simple, visual way. Built with Node.js and React.js, it provides an intuitive dashboard to add drivers, create routes, and track assignments in real time. Developed for the DRB Internship Program 2025, highlighting clean design and practical scheduling tools.
#axios #expressjs #javascript #mongodb #mongoose #mvc-architecture
View Repository on GitHub ↗ REPOSITORY OVERVIEW Live repository statistics ★ 1 Stars
⑂ 0 Forks
◯ 0 Open issues
◉ 1 Watchers
58 /100
OPENREPOHUB HEALTH SIGNAL Mixed signals A transparent discovery signal based on current public GitHub metadata.
Recent activity35% weight
52 Community adoption25% weight
0 Maintenance state20% weight
100 License clarity10% weight
100 Project information10% weight
100 This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
README preview Driver Scheduling System
Full-stack Driver Scheduling System for managing drivers and delivery routes with modern animations and real-time connectivity monitoring. Built with Node.js and React.js, it provides an intuitive dashboard with smooth page transitions, animated components, and comprehensive driver/route management. Features include Framer Motion animations, internet connectivity monitoring, and responsive design. Developed for the DRB Internship Program 2025, showcasing clean architecture, modern UI/UX, and practical scheduling features.
📋 Project Description
The Driver Scheduling System is a logistics management platform that enables efficient assignment of drivers to delivery routes. The system provides real-time tracking of driver availability, route management, and automated scheduling algorithms to optimize delivery operations.
🌐 Live Preview
📸 Website Preview (UI Mockup)
🛠️ Technologies Used
Frontend
React 19 - Modern UI library with hooks
TypeScript - Type-safe JavaScript
Vite - Fast build tool and development server
React Router v7 - Client-side routing
TanStack Query (React Query) - Server state management and caching
Axios - HTTP client for API communication
Tailwind CSS v4 - Utility-first CSS framework
SASS - CSS preprocessor
React Toastify - Notification system
FontAwesome - Icon library
Google Fonts - Typography and font styling
Framer Motion - Advanced animations and transitions
Redux Toolkit - State management (for future scalability)
Backend
Node.js - JavaScript runtime
Express.js v5 - Web application framework
ALGORITHMICALLY RELATED Similar Open-Source Projects Selected from shared topics, language and repository description—not editorial ratings.
Full-stack Driver Scheduling & Fleet Management System built with React.js, TypeScript, Node.js, Express.js, and MongoDB. Enables efficient driver-route management through assignment scheduling, availability validation, conflict detection, analytics dashboards, activity tracking, and real-time monitoring. Developed for the DRB Internship Program.
65 /100 healthActive repository Has homepage
TypeScriptMIT #axios #digital-system #expressjs #full-stack-web-development
⑂ 1 forks ◯ 0 issues Updated Jun 17, 2026
Project homepage ↗
MongoDB Atlas - Cloud database service
Mongoose - MongoDB object modeling
Multer - File upload handling
CORS - Cross-origin resource sharing
Dotenv - Environment variable management
Deployment & Hosting
Vercel - Frontend and backend hosting
MongoDB Atlas - Cloud database hosting
Git - Version control
✨ Key Features
🚗 Driver Management
Complete CRUD Operations : Add, edit, view, and delete drivers
Driver Profile Management : Personal information, contact details, and documents
License Management : Track driving license types, numbers, and expiration dates
Vehicle Information : Vehicle type, make, model, year, and color tracking
Document Upload : Profile pictures and license document uploads with validation
Driver Status Tracking : Available, on_route, unavailable status management
Assignment History : Track past route assignments and performance
Bulk Operations : Select and delete multiple drivers at once
🛣️ Route Management
Complete CRUD Operations : Create, edit, view, and delete routes
Location Tracking : Start and end location management
Route Details : Distance, duration, cost, and speed specifications
Status Management : Unassigned, assigned, in progress status tracking
Driver Assignment : Assign and unassign drivers to routes
Conflict Detection : Prevent double assignments and availability conflicts
Bulk Operations : Select and delete multiple routes at once
Route Filtering : Filter by status, duration, and search terms
📊 Dashboard & Analytics
Real-time Statistics : Live driver and route counts
Activity Feeds : Comprehensive logging of all system activities
Export Functionality : CSV export for drivers, routes, and activity feeds
Search & Filtering : Advanced search across all entities
Pagination : Efficient handling of large datasets
Responsive Tables : Mobile-friendly data display
🔄 Smart Scheduling
Availability Checking : Real-time driver and route availability validation
Conflict Resolution : Automatic detection of scheduling conflicts
Assignment Logic : Intelligent driver-route matching
Status Synchronization : Real-time updates across the system
Activity Logging : Complete audit trail of all changes
📱 User Interface
Responsive Design : Mobile-first approach with cross-device compatibility
Modern UI/UX : Clean, intuitive interface design with smooth animations
Page Transitions : Smooth page-to-page navigation with Framer Motion
Component Animations : Staggered animations for lists, tables, and cards
Modal-based Editing : Streamlined editing experience with animated modals
Loading States : Proper loading indicators and error handling
Toast Notifications : User-friendly success and error messages
Accessibility : Keyboard navigation and screen reader support
Internet Connectivity : Real-time connection status monitoring with retry functionality
🔧 Advanced Features
File Upload System : Secure image and document uploads with validation
Data Validation : Client-side and server-side validation
Error Handling : Comprehensive error management with user feedback
URL State Management : Filter states preserved in URL parameters
Unsaved Changes Protection : Prevents accidental data loss
Bulk Actions : Efficient management of multiple records
Internet Connectivity Monitoring : Real-time connection status with floating notifications
Advanced Animations : Framer Motion-powered smooth transitions and micro-interactions
Table Row Animations : Bottom-to-top staggered animations for data tables
Hover Effects : Enhanced button and card interactions with CSS transforms
🚀 Installation Instructions
Prerequisites
Node.js (v18 or higher)
npm or yarn package manager
Git
Local Setup
Clone the repository
git clone https://github.com/Senior-Architecture/driver-scheduling-system
cd driver-scheduling-system
Backend Setup
# Install dependencies
cd Backend-server
npm install
npm start
Frontend Setup
cd Frontend-client
npm install
# Configure environment variables
VITE_API_BASE_URL=http://localhost:3001
# Start the development server
npm run dev
Access the application
📁 Project Structure driver-scheduling-system/
├── Backend-server/ # Node.js API server
│ ├── models/ # Database models (Drivers, Routes, ActivityFeeds)
│ ├── routes/ # API route handlers
│ │ ├── AddNewDriver_Route.js
│ │ ├── EditDriver_Route.js
│ │ ├── DeleteDriver_Route.js
│ │ ├── AddNewRoute_Route.js
│ │ ├── EditRoute_Route.js
│ │ ├── DeleteRoute_Route.js
│ │ ├── GetActivityFeeds_Route.js
│ │ ├── UploadImageOnServer_Route.js
│ │ └── ... (18 total routes)
│ ├── utils/ # Utility functions
│ │ ├── serverManager.js
│ │ ├── driverIdGenerator.js
│ │ └── routeIdGenerator.js
│ ├── index.js # Server entry point
│ └── package.json
├── Frontend-client/ # React application
│ ├── src/
│ │ ├── assets/ # Static assets (images, icons)
│ │ ├── components/ # Reusable UI components
│ │ │ ├── DriversPage_Components/
│ │ │ ├── RoutesPage_Components/
│ │ │ ├── ActivityFeedsPage_Components/
│ │ │ ├── Dashboard_Components/
│ │ │ └── SharedModalComponents/
│ │ ├── pages/ # Page components
│ │ │ ├── Dashboard/
│ │ │ ├── DriversPage/
│ │ │ ├── DriverDetailsPage/
│ │ │ ├── RoutesPage/
│ │ │ ├── RouteDetailsPage/
│ │ │ ├── ActivityFeedsPage/
│ │ │ ├── AboutPage/
│ │ │ ├── ContactPage/
│ │ │ └── CalendarPage/
│ │ ├── utils/ # Utility functions and hooks
│ │ │ ├── functions/ # Utility functions
│ │ │ └── hooks/ # Custom hooks
│ │ │ ├── api/ # API hooks (React Query)
│ │ │ └── activity-feeds/
│ │ ├── common/ # Shared components and utilities
│ │ │ ├── Animations/ # Framer Motion animation components
│ │ │ │ ├── AnimatedPage/
│ │ │ │ ├── AnimatedComponent/
│ │ │ │ ├── AnimatedList/
│ │ │ │ ├── AnimatedModal/
│ │ │ │ ├── AnimatedTableRow/
│ │ │ │ ├── AnimatedButton/
│ │ │ │ └── AnimatedLoadingSpinner/
│ │ │ ├── InternetChecker/ # Internet connectivity monitoring
│ │ │ └── Types/ # Shared types and interfaces
│ │ └── main.tsx # Application entry point
│ ├── public/ # Static assets
│ └── package.json
└── README.md
📚 API Documentation
Base URL https://driver-scheduling-system-5kmi.vercel.app
Core Endpoints
Drivers
GET /get-all-drivers - Retrieve all drivers with pagination and filtering
GET /get-driver-details/:id - Get specific driver details
POST /add-new-driver - Create a new driver
PUT /edit-driver/:id - Update driver information
DELETE /delete-driver/:id - Remove a driver
DELETE /delete-bulk-drivers - Bulk delete drivers
Routes
GET /get-all-routes - Retrieve all routes with pagination and filtering
GET /get-route-details/:id - Get specific route details
POST /add-new-route - Create a new route
PUT /edit-route/:id - Update route information
DELETE /delete-route/:id - Remove a route
DELETE /delete-bulk-routes - Bulk delete routes
Dashboard & Analytics
GET /get-dashboard-stats - Get dashboard statistics
GET /get-activity-feeds - Retrieve activity logs with filtering
GET /get-assigned-routes-by-month - Get monthly route assignments
Availability & Validation
GET /check-driver-availability/:id - Check driver availability
GET /check-route-availability/:id - Check route availability
File Management
POST /upload-image-on-server - Upload images and documents
Sample Request/Response GET /get-all-drivers?page=1&limit=10&status=available&vehicleType=Car
{
"data": [
{
"driver_id": "DR001",
"name": "John Doe",
"phone": "+1234567890",
"status": "available",
"license_type": "B",
"vehicle_type": "Car",
"assignedRoute": null,
"joined_at": "2024-01-15T10:30:00Z"
}
],
"currentPage": 1,
"totalPages": 5,
"totalDocs": 50,
"hasNextPage": true,
"hasPreviousPage": false
}
🎯 Key Pages & Features
Dashboard
Real-time statistics overview
Quick access to recent activities
System health monitoring
Drivers Management
Drivers List : Paginated table with search and filtering
Driver Details : Comprehensive driver profile view
Add Driver : Modal form with validation and file upload
Edit Driver : Full driver information editing
Bulk Actions : Select and manage multiple drivers
Routes Management
Routes List : Paginated table with advanced filtering
Route Details : Complete route information and as