π§ Linux (Recommended) |
πͺ Windows |
---|---|
demo.mp4 |
demo.mp4 |
Download Executable | Download Executable |
Set Environment Variables | Set Environment Variables |
unzip files | unzip files |
execute ./eldflow/server |
execute .\eldflow\server.exe |
Darn Easy ELD Log Management & Smart Trip Planning
ELD Flow is a powerful, Rust-based application designed for commercial drivers to log their hours of service (HOS), track trips, and ensure compliance with ELD (Electronic Logging Device) regulations. It features AI-powered summaries, real-time syncing, and seamless trip tracking.
1οΈβ£ Sign Up/Login - Create an account and log in as a driver.
2οΈβ£ Start a Trip - Log pickup and drop-off locations.
3οΈβ£ Log Hours - Automatically track driving, on-duty, and off-duty hours.
4οΈβ£ Sync & Export - View reports and export logs for compliance.
β Easy ELD Logs - Log, review, and manage hours effortlessly.
β Smart Trip Tracking - Plan, monitor, and optimize every route.
β AI Insights - Get automatic summaries and smart alerts.
β Stay Compliant - HOS tracking with real-time violation alerts.
β Built for Devs - High-performance Rust backend with fleet APIs.
β GPS Route Optimization - Smarter, faster navigation.
β Advanced Analytics - Actionable data at a glance.
Pre-compiled binaries are available for Linux and Windows. Download, set up environment variables, and run the application.
-
Download the latest
.exe
release. -
Run:
.\eldflow.exe
-
Download the latest binary.
-
Execute:
chmod +x eldflow ./eldflow
-
Install
rustup
:curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
-
Install
Dioxus CLI
:cargo install [email protected]
-
Fork/Clone the GitHub repository.
git clone https://github.com/opensass/eldflow
Before you can start running ELDFlow, you'll need to configure a few environment variables. These are essential for connecting to external services like MongoDB, Unsplash, and the Gemini AI, so let's get you set up! Here's a quick guide:
Inside the project root, copy and create a file named .env
from .env.example
. This file will securely store all your environment variables.
cp .env.example .env
Note
Replace the following values with your actual credentials.
MONGODB_USR=
MONGODB_PWD=
MONGODB_CLSTR=your-cluster.mongodb.net
MONGODB_DB_NAME=elds
JWT_SECRET=
GEMINI_API_KEY=
UNSPLASH_API_KEY=
If you're missing any of these keys, check each service's developer portal to generate them.
Follow our quick guide to set up your MongoDB database and connect it to your project!
Generate a secret key using OpenSSL and update its env var in the .env
file.
openssl rand -hex 128
d8d0b35856c6fa90a8f3f818fa1c71785d63181945077a4c81e28f731de406c94acad5e864fc85604c520cd67e4977a06656eee081d2d0a897415bb42d8dca167662ae53078084ce70feaee104a3428797078c5bb359db277b26182114bb6b6f4e50d34dcce1ab2ed952912f5783ca89138d508f41bc2d56e60ef2480f501819
To obtain your API key, navigate to Google AI Studio and generate it there. This key allows ELDFlow to communicate with Gemini API.
ELDFlow uses Unsplash which provides a powerful API to search for and retrieve high-quality images. To communicate with this api you will need a Secret key. If you don't already have one, sign up for a free account at Unsplash, create a new app, and copy the Secret key at the bottom of the page after creating the app.
Once the environment is set up, you're ready to build and run ELDFLOW.
dx serve
Navigate to http://localhost:3000 to access ELDFLOW.
The system is designed with modular Rust components, ensuring high performance and scalability. The Axum backend integrates MongoDB for storing logs, trips, and user data.
Table | Description |
---|---|
User |
Stores driver details, license info, and ELD device IDs. |
Trip |
Manages trip details, locations, and estimated durations. |
EldLog |
Keeps track of driving, on-duty, and off-duty hours. |
Route |
Stores trip routes, waypoints, and total distances. |
DailyLog |
Logs daily activities, including driver signatures. |
FuelingStop |
Records fuel stops and locations. |
LogEntry |
Tracks status changes like driving, resting, and on-duty shifts. |
We welcome contributions! Feel free to submit pull requests or open issues for bug reports and feature suggestions.
This project is licensed under the MIT License. See the LICENSE file for details.