← All work

Tristate TMS

The system a NY/NJ freight broker runs on.

Private staff app
Tristate TMS interface with sample data, full page

This one runs behind a staff login, so the screen is rendered with sample data, not real records.

The problem

The team ran on disconnected tools: one app for loads, another for invoices, a Google Sheet as the customer list, plus WhatsApp and phone. Nothing shared the same data, and getting carrier quotes meant hours of repetitive email.

What we built

  • One system for customers, carriers, loads, documents and invoicing.
  • Proof of delivery and bills of lading stored with the load they belong to.
  • Customer-entered details checked by staff before a load goes active.
  • Carrier invoices checked against the price that was agreed.
  • A private link customers can open to check their shipment, no login needed.
  • Next: an AI assistant that emails carriers for quotes, chases the ones who go quiet and lines the prices up, while staff still choose the carrier and set the price.

What it solved

  • One place to see where every load and every customer stands.
  • Fewer billing mistakes, because carrier invoices are checked against the agreed quote.
  • Customers can check status themselves instead of calling.
  • The team keeps every decision about carriers, prices and billing; the software does the typing.

Built with

  • Next.js
  • Postgres
  • Prisma
  • Railway
  • Vercel