Skip to content

Marjory00/TruckOne

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TruckOne: Fleet and Warehouse Management System

Author: Marjory D. Marquez


Disclaimer: Portfolio Presentation

Certain files and directories have been omitted from this public repository for copyright and proprietary reasons.

This project, TruckOne, is part of my professional portfolio and is intended to demonstrate my experience in the latest web technologies and application development methodology.

The full, proprietary version may include additional data, configuration files, and specific asset files (such as images, logos, or sensitive data) that are not included here.


1. Project Summary

TruckOne has been upgraded from a basic MVP (Minimum Viable Product) to a comprehensive Fleet & Warehouse Management System (FWMS). Built on Python/Flask with a modern Bootstrap 5 frontend, the system provides real-time operational visibility, proactive maintenance scheduling, and inventory control for vehicle spare parts. The core business goal is to significantly reduce unplanned downtime and optimize vehicle utilization through a modern, responsive web application.


2. Advanced Features

Feature Description Business Impact
Utilization KPI Dashboard shows percentage of fleet currently 'In Transit' ($\text{In Transit} / \text{Total}$), optimizing dispatch. Reduces underutilization and bottlenecks.
Maintenance Module Dedicated pages for scheduling service, logging repair costs, and tracking service history. Reduces unexpected breakdowns.
Inventory Tracking Tracks spare parts stock (tires, oil, filters) with alerts for low stock levels. Ensures parts availability and minimizes repair delays.
Activity Log Chronological record of status changes for auditing and accountability. Improves data integrity and compliance.
Professional UX Bootstrap 5 for a responsive, modern interface with semantic colors (Green: Ready, Red: Critical). Increases user adoption and efficiency.
1. Maintenance Page Lists trucks due for service, allows scheduling, and logs detailed service records (cost, description). Implemented

3. Technology Stack & Features

Component MVP Technology Rationale
Backend/Core Logic Python 3 / Flask Lightweight, scalable web framework.
Database SQLite (via Flask-SQLAlchemy) File-based persistence, ready for migration to PostgreSQL/MySQL.
Testing Pytest Robust unit testing for routes and database logic.
Production Server Waitress Production-grade WSGI server for stability.
Frontend Styling Basic HTML/CSS Bootstrap 5
Server Flask Dev Server Waitress

4. Application Screenshots

These screenshots illustrate the professional design and key features of the TruckOne system.

1. Main Page

Dashboard Overview

The dashboard provides immediate KPIs and status summaries.

Dashboard Main Page

2. Fleet Management

A view of the dedicated pages for managing service schedules and listing fleet assets.

Fleet Management Section

3. Maintenance Center

Pages showing stock levels with low-stock alerts, and the chronological record of all operational changes.

Maintenance Main Page

4. Inventory Section

Inventory, spare parts

Inventory Main Page

5. Activity Log

A view of the dedicated pages for managing service schedules and listing fleet assets.

Activity Log Section

6. Vehicle Reports

Pages showing stock levels with low-stock alerts, and the chronological record of all operational changes.

Reports Main Page


5. Application File Structure

TruckOne/
├── app.py                      # Main Flask application, routes, and database models
├── init_db.py                  # Script to create DB and load sample data
├── requirements.txt            # Python dependencies list
├── .env                        # Environment variables (IGNORED BY GIT)
├── .gitignore                  # Defines files to exclude (venv, database.db, .env)
├── init.py                     # Makes TruckOne a Python package (fixes import errors)
├── static/
│   └── style.css               # Custom CSS styles (overriding Bootstrap)
├── templates/
│   ├── base.html               # Main layout, Bootstrap links, and navigation
│   ├── index.html              # Dashboard View
│   ├── fleet_management.html   # Fleet List and Add Truck Form
│   └── truck_details.html      # Single Truck Detail and Status Update
└── tests/
└── test_app.py                 # Pytest unit tests

6. Business Challenges and Goals

Challenge Area Pre-TruckOne State TruckOne Solution Business Impact
Maintenance Scheduling Reactive, scattered service history. Proactive Alerts: Dedicated Maintenance page tracks service due dates and logs service history. Reduces unexpected breakdowns and increases fleet reliability.
Utilization & Downtime Difficulty quantifying operational capacity. Utilization KPI: Dashboard metric showing the percentage of the fleet currently 'In Transit'. Optimizes dispatching and identifies underutilized assets immediately.
Aesthetic & UX Basic, unstyled Flask interface. Professional Frontend: Implemented Bootstrap 5 for a responsive, modern, and intuitive user experience. Improves user adoption and reduces staff training overhead.
Security & Auditing No record of who changed statuses or when. Activity Log: Dedicated page tracking all critical status changes (User, Truck, Old Status, New Status, Timestamp). Ensures accountability and aids in compliance auditing.

7. Future Roadmap

The following features are planned for the next development phase:

  1. User Authentication & Roles: Implement secure login with permissions (Manager, Dispatcher, Read-Only).
  2. Mapping Integration: Integrate with a mapping API to visualize the current location of trucks marked 'In Transit'.
  3. Reporting Module: Allow managers to generate and download reports (CSV/PDF) on utilization rates and maintenance spending.

Setup and Installation (Windows PowerShell)

Follow these steps to get the application running on your local machine.

1. Prerequisites

  • Python 3.x installed (and added to your PATH).
  • Git installed.
  • Visual Studio Code (or preferred IDE).

2. Clone the Repository

# Clone the project from GitHub
git clone [YOUR_GITHUB_REPO_URL]
cd TruckOne

3. Set Up Virtual Environment

It is critical to use a virtual environment to isolate project dependencies. PowerShell

Create the virtual environment

python -m venv venv

Activate the environment (Use the correct script for PowerShell)

.\venv\Scripts\Activate.ps1

(You should see (venv) at the start of your terminal prompt.)

4. Install Dependencies

Install all required packages from requirements.txt.

PowerShell

pip install -r requirements.txt

5. Run the Application

The application will automatically create the database.db file and the necessary tables on the first run. PowerShell

python app.py

6. Access the Application

Open your web browser and navigate to the following address:

http://127.0.0.1:5000/

Press Ctrl+C in the terminal to stop the application.

File Protection

This project uses a .gitignore file to exclude sensitive or locally generated files from the repository:

venv/: The entire Python virtual environment folder.

database.db: The SQLite database file containing all fleet data.

This ensures a clean, portable code repository that doesn't expose local data or dependencies.

Testing

The application includes unit tests using Pytest to ensure core database logic and routes are functioning correctly.

  1. Ensure your virtual environment is active.

  2. Run the test suite from the root directory:

    pytest

About

TruckOne: A lightweight, web-based application designed to manage/track commercial truck fleet within warehouse or logistics environment. Built with Python, Flask. Offers centralized dashboard, simple tools for adding new trucks, updates operational status (Warehouse, In Transit, Maintenance).

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors