eShift is a modern logistics and fleet management platform designed to streamline operations for transport companies and logistics providers. It solves the challenges of real-time job tracking, driver management, and reporting, providing an intuitive interface for dispatchers, managers, and drivers.
Target Users:
- Logistics companies
- Fleet managers
- Dispatchers
- Drivers
- Customers register via the portal and define a new job.
- A job can include multiple JobStops (one-to-many relationship, e.g., pickup and delivery points).
- Upon job creation, the backend automatically generates a Trip linked to the job.
- Admins review and approve jobs.
- Post-approval, admins assign:
- ποΈ A Container and π Truck for the trip.
- π¨β
βοΈ A Driver and optionally an π§βπ€βπ§ Assistant.
- The trip is scheduled and marked as START π¦.
- Once the trip starts, a Load record is created, capturing:
- βοΈ Weight
- π¦ Volume
- π’ Start and end meter readings (for tracking distance or fuel usage).
- After the job is completed, admins generate a Slip (e.g., delivery receipt, invoice, or proof of completion).
- Custom Management: Manage customers, roles, vehicles, and drivers.
- Dashboards: π Overview of operations (active trips, pending jobs).
- Dynamic Reports: π Customizable reports for metrics like trip efficiency, driver performance, or job completion rates.
- Live Map Integrations: πΊοΈ Real-time tracking of vehicles or trips, using APIs like Google Maps, Mapbox, etc.
- Real-time job and trip tracking
- Interactive dashboard and analytics
- Driver and vehicle management
- Invoice generation and reporting
- Route mapping and optimization
- Role-based access control (Admins, Assistants, Drivers, etc.)
- Customizable stops and job paths
- Secure authentication and authorization
- Frontend: Next.js, React
- Languages: JavaScript, JSX
- Styling: CSS Modules, Custom CSS
- State Management: React Context API
- APIs: RESTful API integration
- Tools: ESLint, Vercel (deployment)
git clone https://github.com/Deshan555/eShift-Frontend.git
cd eShift-Frontend/frontend
npm install
npm run dev
Open http://localhost:3000 in your browser to view the app.
Example:
- Log in as an admin to access the dashboard and manage jobs.
- Use the sidebar to navigate between modules (Drivers, Jobs, Reports, etc.).
Set up the following environment variables in a .env.local
file:
NEXT_PUBLIC_API_BASE_URL=<your_api_url>
NEXT_PUBLIC_MAP_API_KEY=<your_map_api_key>
Adjust other settings in next.config.mjs
as needed.
frontend/
βββ public/ # Static assets (images, icons)
βββ screenshots/ # Project screenshots
βββ src/
β βββ components/ # Reusable React components
β βββ pages/ # Next.js pages and API routes
β βββ styles/ # CSS and font files
βββ package.json # Project metadata and dependencies
βββ next.config.mjs # Next.js configuration
βββ README.md # Project documentation
![]() Screenshot 1 |
![]() Screenshot 2 |
![]() Screenshot 3 |
![]() Screenshot 4 |
![]() Screenshot 5 |
![]() Screenshot 6 |
![]() Screenshot 7 |
![]() Screenshot 8 |
![]() Screenshot 9 |
Contributions are welcome! Please follow these steps:
- Fork the repository
- Create a new branch (
git checkout -b feature/your-feature
) - Commit your changes
- Open a pull request
Guidelines:
- Write clear, descriptive commit messages
- Follow the existing code style and structure
- Ensure all tests pass before submitting
This project is licensed under the MIT License. See the LICENSE file for details.
- Author: Deshan
- Email: your.email@example.com
- GitHub: Deshan555/eShift-Frontend