v1.0 — For IT handoff
New job request
Fill out this form to request a pickup or delivery. Your dispatcher will be notified immediately — no more emails.
Requested by
Job info
Pickup location
Delivery location
Parts / materials
Click to attach or drag a screenshot here
Request submitted! Your job has been added to the dispatch board. The dispatcher will assign a driver shortly.
Dispatch board
All jobs for today and upcoming. Assign drivers and update status here.
Date Driver PO # Job / WO # From To Part / Materials Tech Address Priority Status Assign driver
Driver roster
Active drivers and their current job load.
Developer notes
Handoff reference for the IT team building the production version of this system.
What this prototype is

This is a self-contained HTML/CSS/JavaScript prototype demonstrating the screens, fields, and workflow for a parts dispatch management system. It contains no backend, no database, and no server — data lives only in the browser's memory and resets on page refresh. The goal is to show exactly what the production system should look like and how it should behave.

Data fields — jobs table

Each job record should store the following fields. Suggested SQL column names are shown.

FieldSQL columnTypeNotes
Datejob_dateDATEScheduled date
Driverdriver_idFK → driversNullable until assigned
PO #po_numberVARCHAR(50)May be null
Job / WO #job_numberVARCHAR(50)May be null
Frompickup_locationVARCHAR(100)Vendor name or WHS
From addresspickup_addressVARCHAR(200)Full street address
Pickup timepickup_timeTIMENullable
Pickup contactpickup_contactVARCHAR(100)
Todelivery_locationVARCHAR(100)
To addressdelivery_addressVARCHAR(200)
Delivery timedelivery_timeTIMENullable
Delivery contactdelivery_contactVARCHAR(100)
Part / Materialspart_descriptionTEXT
Techtech_nameVARCHAR(100)Technician at site
CommentscommentsTEXTSpecial instructions
PrioritypriorityENUM('High','Normal','Low')
Job typejob_typeENUM('Pickup','Delivery','Pickup + Delivery','Return')
Truck typetruck_typeVARCHAR(50)Flat bed, stake bed, etc.
StatusstatusENUM('Pending','In transit','Delivered','Cancelled')
Requested byrequested_byVARCHAR(100)Person who submitted form
Created atcreated_atDATETIMEAuto-set on insert
Three components to build
1. Requestor form (public-facing) A web form accessible to anyone on the network (or via URL). Submits a new job record to the database. No login required. Should send a notification email/text to the dispatcher on submit.
2. Dispatcher dashboard (internal) Shows all jobs in a table — filterable by status, searchable by PO/part/site. Dispatcher can assign a driver and change job status. Should require login. Real-time updates preferred (auto-refresh every 60s minimum).
3. Driver roster A simple view showing all drivers and their active job counts for the day.
  • Current drivers: Dean, Jonathan, Jose, Jerry, Matt, Greg Koenig, Adam Y, Daniel Gomez
  • Store in a drivers table so new drivers can be added without code changes
Recommended tech stack options
Option A — Microsoft Power Apps (fastest, lowest effort) If you are an Office 365 / Microsoft shop, Power Apps can replicate this prototype in days. Data stores in SharePoint or Dataverse. Power Automate handles email notifications. No custom code required.
Option B — Custom web app Build with any web framework (ASP.NET, Node/Express, Django, Laravel, etc.) against a SQL Server or PostgreSQL database. Host on your internal network or a cloud VM. Use this HTML file as the UI spec.
Option C — Airtable / Monday.com (no-code) Configure a base/board with the fields above. Use their built-in form feature for requestors. Fastest path to production with zero infrastructure — good for a pilot.
Questions to answer before build
  • Should requestors log in, or is an open form link sufficient?
  • Does the system need to be accessible from the field (mobile-friendly for drivers)?
  • What notification method — email, SMS, or both — when a job is submitted or assigned?
  • Should PO numbers validate against an existing system (ERP, accounting)?
  • How long should job history be retained?
  • Is an internal network deployment sufficient, or does it need to be cloud-hosted?
  • Who administers the vendor list and driver roster?