Wishdeal Factory · Storefront
Operator interview · $75/hr · Roll Digital's seat
← Back to FreightAI

How Caleb would build FreightAI.

First-person from one of our chief operators. What he'd ship and how, AI-amplified. Stack, hour estimate, day-by-day plan, the parts that are hard, and the handoff. Synthesized from the agent spec.

How I'd build FreightAI

I'd ship this on Next.js with Postgres, Stripe for billing, Twilio for carrier SMS, and Resend for email. The backend would be a Node.js API layer handling carrier verification via SaferWatch and load data ingestion from freight feeds. I'd estimate 250-300 hours to get to a production-ready MVP with qualified carrier matching, quote generation, load tracking, and shipper notifications - roughly 6-7 weeks of focused work, assuming I'm handling both backend and frontend.

Day-by-day plan

Day 1: Provision Postgres schema for tenants, organizations, users, carriers, loads, and quotes. Wire up Clerk for OAuth and multi-tenant isolation.

Day 2: Implement Stripe billing. Set up the three pricing tiers, connect Stripe webhooks, and auto-downgrade on churn.

Day 3-4: Build onboarding flow. New broker signs up, creates an organization, connects their SaferWatch account (OAuth), specifies service areas.

Day 5: Ship the quote form UI. User inputs shipment weight, origin, destination, commodity. Backend calculates base cost using DAT spot rates, applies margin, returns quote in 30 seconds.

Day 6: Integrate SaferWatch API for carrier authority verification. Backfill database with carrier safety audits, DOT numbers, insurance expiry. Set up polling to catch updates weekly.

Day 7: Build load tracking dashboard. Display current shipments, status (quoted, offered, in transit, delivered), carrier assigned, shipper contact status.

Day 8: Wire Twilio for SMS. When a quote is accepted, shipper gets an SMS with carrier details and ETA. Carrier gets SMS when load is offered.

Day 9: Implement PDF quote generation and email via Resend. Quotes are both emailed and displayed in-app.

Day 10: Build carrier discovery UI. Show brokers a directory of carriers in their service area, sortable by safety rating, price, availability.

Day 11: Add manual load assignment and conflict checking. Prevent double-booking loads. Log assignment history.

Day 12: API tests, Postgres query optimization, security audit (input validation, rate limits, SQL injection checks).

What's hard about this build

The hardest part is carrier qualification. SaferWatch requires a paid seat, returns inconsistent data on expiring insurance, and you're querying rate-limited endpoints. If a carrier's safety audit is stale or their insurance lapsed yesterday, you show bad data, and brokers who assign bad carriers get fined or lose shipper relationships. You need to handle FMCSA authority verification separately, cache aggressively, and implement a manual override flow for edge cases. Load matching logic also compounds quickly: you need conflict detection, pricing validation, and shipper communication sync. Finally, freight brokers are price-sensitive during soft markets and will churn fast if your quoting algorithm is off by 5-10% versus DAT. You need a tuning mechanism so brokers adjust margins live.

What's fast because of AI

AI compresses the scaffolding and testing phases significantly. Claude can generate the full Postgres migrations, Stripe webhook handlers, and Twilio message templates in minutes, work that would normally take hours of boilerplate. Tests for the quote engine and carrier conflict checking can be drafted and debugged in a single session instead of half a day. Edge-case enumeration is where AI shines most: I'd describe the business logic once, and Claude enumerates what happens when a carrier is unlicensed, when insurance expires mid-route, when two brokers try to book the same load, and generates test cases for all of them. Copywriting for shipper SMS and broker emails is also much faster. Debugging integration failures with SaferWatch or DAT is faster because Claude can trace logs and suggest fixes quickly. Without AI, this stretches to 10+ weeks. With it, production-ready in 6-7.

How I'd hand it off

I'd provide a Loom walkthrough covering broker signup, carrier verification setup, and quote-to-shipment flow. A runbook details SaferWatch carrier verification, quoting algorithm margin tuning, and churn handling. You get a 30-day pager rotation where I'm on call for critical bugs: carrier verification failures, Stripe issues, load conflicts. All credentials (SaferWatch, Stripe, Twilio, Postgres, Vercel) transfer to your account. I'd leave a Linear board documenting technical debt and future work: load optimization, predictive pricing, bulk exports.

Hire Caleb to build this for you.

FreightAI is available to own for $200 flat. Or pay $75/hr for a Roll Digital chief operator to build it for you, AI-amplified.

See pricing →