Back to projectsProject PDF
Dispatch workflow demo

Pampanga Dispatch

A Pampanga-focused dispatch demo that brings bookings, driver availability, assignment, and map context into a browser workspace.

School project modernizationWeb application demoNext.js · TypeScript · Tailwind CSS · MapLibre · OSRM
My contribution

Modernization of a Java command-line school project into a responsive web dispatch workflow and map interface.

Demo

A session-only demonstration using synthetic bookings.

Interface preview01 / 01
Map context for a sample booking

Repository screenshot with synthetic booking data and public municipality locations. This is a session-only demo without authentication or a persistent database. Bookings reset on refresh; optional road routing uses public demo infrastructure.

Map context for a sample booking
Pampanga Dispatch map showing public municipality markers, a synthetic parcel booking, and an optional OSRM demonstration route

The challenge

A command-line booking project can demonstrate logic but makes it hard to understand the operational picture. The web version needed to make booking status and driver availability visible together.

What I built

  • Ride, parcel, and food booking flows with driver availability and vehicle capability checks.
  • Driver suggestions and assignment, plus booking transitions through pickup, transit, completion, or cancellation.
  • A MapLibre map with Pampanga locations, a straight-line preview, and optional OSRM demonstration road routes.

Key implementation decisions

Model the dispatch lifecycle explicitly

Assignment respects availability and vehicle capability. Completing or cancelling an assigned booking releases the driver for other work.

Separate a map demonstration from live operations

Road routes are optional demo requests with a fallback. The app does not claim live traffic, multi-stop optimization, or production logistics capability.

The result

A working web demo that makes the original booking logic explorable through forms, status views, and a map. Data exists only for the current browser session.