home / blog / greater-omaha-packing-showcase

Building a Django Yard-Management App for Greater Omaha Packing

Tiempo built an internal Django web app for Greater Omaha Packing that ties their security, transportation, and shipping departments together. With a McLeod TMS integration handling the order import.

Greater Omaha Packing Showcase

Greater Omaha Packing is one of the largest beef processors in the country, headquartered in Omaha. They came to Tiempo with a specific operations problem: trucks coming into and out of the plant were tracked across a handful of paper logs, spreadsheets, and disconnected systems, and nobody had a single real-time view of which driver was where with which trailer carrying what order. We built them a Django web app, used internally on iPads, that handles the whole flow.

What it does

DepartmentWhat the app handles
Security (front gate)Truck, driver, and trailer check-in / check-out from iPads at the guard shack. Real-time visibility of every vehicle on the property.
TransportationOrder assignment to specific loads. Orders imported from McLeod TMS get tied to the right trailers; manual dispatch errors basically disappeared.
ShippingTrailer location and driver availability tracking. Loading schedules coordinated with warehouse staff; trailers don’t sit waiting for orders that aren’t ready.
Operations managementPerformance tracking. Chain speeds, downtime, throughput metrics. Generates the kind of report a plant manager actually wants on their desk Monday morning.

The McLeod TMS integration

The hardest technical piece was tying the app into McLeod TMS. The transportation management system that handles their broader logistics. The integration imports orders from McLeod so they can be assigned to trailers in our app, and pushes back invoice-relevant data so McLeod stays the source of truth for billing.

This is the part of the project that took the longest, mostly because TMS integrations are always more painful than they look on paper. Schema drift, edge cases on partial loads, occasional retries needed for transient failures. The usual.

The stack

  • Backend: Django + Django REST Framework, Postgres, deployed on internal infrastructure.
  • Frontend: iPad-friendly responsive web UI. No native app needed, which makes deployment to new devices trivial.
  • Integration layer: Custom Python connectors to McLeod and a couple of other internal systems.
  • Reporting: Django admin extensions + scheduled exports for the management dashboards.

Why a web app on iPads, not a native app

Native apps would have been overkill. The guards at the front gate don’t need offline mode. The gate has Wi-Fi. They don’t need push notifications. The app is open all shift. What they need is a fast, touch-friendly UI that loads instantly when an iPad gets pulled out of its cradle. A Django app served over HTTPS to mobile Safari does that perfectly, and Tiempo can push updates to all the iPads at once with a single deploy.

This is a project type Tiempo does a lot of. Internal-facing custom apps that replace spreadsheets, paper, and disconnected vendor portals. If you have a similar “our data lives in five places and nobody has the full picture” problem, drop me a line.

← Back to all posts Reply to this post →