An Electronic Logging Device (ELD) solution for truck drivers
The ELD System is a full-stack web application designed to assist truck drivers in planning trips while ensuring compliance with Hours of Service (HOS) regulations. Built with Django (backend) and React (frontend), it takes trip details as input, calculates routes, and generates detailed daily log sheets.
- Trip Input: Enter current location, pickup, dropoff, and cycle hours.
- Route Calculation: Displays a map with markers.
- HOS Compliance: Generates logs respecting 8-hour driving breaks, 11-hour daily limits, and 70-hour cycle rules.
- Deployment: Hosted live on Vercel for easy access.
Follow these steps to get the project running on your machine:
- Python 3.8+ (for Django backend)
- Node.js 16+ and npm (for React frontend)
- Git
- Clone the Repository:
git clone https://github.com/fedhako7/electronic-logging-device.git cd electronic-logging-device - Backend Setup (Django):
cd rod_app
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt
python manage.py migrate
python manage.py runserverThe backend will run on http://localhost:8000.
- Frontend Setup (React):
cd ../rod-frontend npm install npm run dev
Switch BASE_URL to local from rod-frontend/src/api/api.js. The frontend will run on http://localhost:5173 (default Vite port).
Check out the live version of the app here: 👉 https://fedesaeld.vercel.app/
Check out the video demo of the app here: 👉 https://www.loom.com/share/282d060a2fe64329b5d1f8eff3f1d3b6?sid=2cd3b234-b07f-4221-b261-e2401fcb28ad
Here’s a sample input you can use to test the app:
{
"current_location": "Los Angeles, CA",
"pickup_location": "Phoenix, AZ",
"dropoff_location": "Dallas, TX",
"cycle_hours": 0
}Expected Output Route: Displays a map for current, pick-up, and drop-off locations with markers.
Logs: Multi-day log sheets with driving, off-duty (e.g., 8-hr breaks, 10-hr rests), and on-duty (pickup, dropoff, fuel) segments.
Route and Map: Map with markers
Daily Logs: Detailed HOS-compliant logs.
🔹 Enhance HOS compliance with stricter edge-case checks.
🔹 Add remarks under the LogSheet for duty status changes with time and place.
🔹 Recommend known locations for input fields to streamline entry using datalist.
🔹 Implement Redis caching for OSRM API responses to improve performance.
🔹 Add exportable PDF log sheets for drivers to download.
-
Backend: Django, Django REST Framework, Nominatim (geocoding), OSRM (routing).
-
Frontend: React, Leaflet (map rendering).
-
Deployment: Vercel (frontend), Render (backend).
-
Other: Python, JavaScript, CORS for cross-origin requests.
Email: fedhasayelmachew@gmail.com


