You define a small supply chain network — plants, distribution centers, and the regions that demand product from them — and the app finds the cheapest way to route everything, then explains the biggest opportunity to make it cheaper still. Every number shown, including the AI finding, comes from actually solving the model. Nothing is estimated or made up.
The app loads with a prefilled network — plants, distribution centers, and demand regions with realistic capacities and costs — so there's a full result to look at before you type anything.
Change capacities, demand, mileage, cost per mile, or fixed costs for any facility, or add and remove plants, distribution centers, regions, and lanes.
The full network — every node, lane, and constraint — is sent to the backend as JSON.
FastAPI builds a mixed-integer optimization model with PuLP and solves it with CBC, a free open-source solver, in under 10 seconds. See “What's actually solving this?” below.
If demand can't be met within the given capacities, the app reports why instead of guessing. Otherwise it has a solution proven to be the cheapest possible for this exact network.
Which plant or distribution center serves which region, how much flows on each lane, which facilities are open versus idle, and the total cost breakdown.
The backend re-solves the model with a bit more capacity at each fully-used facility, keeping only the deltas that are real and would actually lower cost.
Claude Haiku 4.5 turns the single biggest computed opportunity into one plain-language sentence — e.g. “increasing Plant 1 capacity by 500 units would reduce total cost by $12,000/year.” If Anthropic is unavailable, a plain-template sentence built from the same real numbers is shown instead. See “What is the AI actually doing?” below.
Three one-click presets — apply the AI's finding, add 10% demand, or close the least-used facility — each re-solve the real model locally and show a before/after cost comparison.
Applying a scenario updates the live network and re-renders the diagram and results, free to explore again from step 2.
This is a mixed-integer linear program (MILP)— a well-established class of optimization problem used throughout supply chain planning. In plain terms: the model has a list of decisions it's allowed to make (how much to ship on each lane, whether each facility is open), a set of hard rules those decisions must obey (a region's demand must be fully met, a facility can't ship more than its capacity), and a single number to minimize — total cost, meaning transportation plus the fixed cost of running each open facility.
PuLP is a Python library for describing that problem in code — the decisions, the rules, the cost to minimize — without hand-writing the underlying math. CBC(COIN-OR Branch and Cut) is the actual solver: a free, open-source engine that takes the problem PuLP describes and searches the space of possible decisions for the cheapest one it can prove is optimal — or proves is impossible, if demand simply can't be met. Both are free and open source, which is part of why this tool costs nothing to run and is easy to fork.
Claude never invents a savings figure. After the real solver finds a solution, the backend re-solves the model a handful of extra times — once for each facility that's fully used ("binding") — with a bit more capacity added, and keeps only the resulting cost deltas that are real and positive. Those already-computed numbers are the only thing sent to Claude. Its job is narrow: rank them and phrase the single best one as a plain-English sentence.
That's why the model behind it is Claude Haiku 4.5, a small and inexpensive model — the task is phrasing a known number, not reasoning about the network, so a larger model would just cost more for the same sentence. If the Anthropic API is ever unavailable, the same real numbers are narrated by a plain string template instead — the finding never disappears, and it's never a guess.