Turn mixed donations into complete school-supply kits.
Know how many kits you can pack right now, and what to buy next.
▶ Watch the narrated demo (2:06, captions on screen) · also on YouTube
A school supply drive can have plenty of donations and still run short of complete kits. One group needs crayons, another needs calculators, both need notebooks, and some kits were promised weeks ago. Counting by hand, it is hard to see what to pack, and which purchase actually finishes more kits.
| 1 · Count | 2 · Plan | 3 · Pack |
|---|---|---|
| One drive sheet for stock on hand, the recipe for each kit and restock prices. | See kits now and after restock, what runs out first, and the one purchase that helps most. | Print a checklist for each kit type, or export CSV. |
The example drive packs 8 kits from stock. One $5 notebook pack brings that to 12 of 16. Change any number and the plan updates as you type.
- See the bottleneck. The plan names the supply that runs out first and what the next kit still needs.
- Keep commitments. Set a minimum for each group and see shortages when stock falls short.
- Spend only where it helps. If a purchase does not finish another kit, KitBridge spends nothing.
- Keep your data. Drives save on your device. JSON backups let you move them. Nothing is sent to a server.
Supports 3 kit types, 12 items, 100 requested kits and a $1,000 restock budget.
flowchart LR
A["Stock · recipes<br/>promises · budget"] --> B["Step 1<br/>Maximize complete kits"]
B --> C["Step 2<br/>Cheapest purchase<br/>for that total"]
C --> D["Packing sheets<br/>+ shopping list"]
KitBridge solves a two-step integer program with the HiGHS solver, compiled to WebAssembly and running in a Web Worker. Money is counted in whole cents. The tests check the solver against brute-force enumeration on 96 small drives.
Built with React, TypeScript and Vite.
Requires Node.js 22.
npm ci
npm run dev| Command | Purpose |
|---|---|
npm test |
Check planning, shortages, exports and saved drives. |
npm run build |
Create the production build. |
npm run preview |
Preview that build locally. |
The demo film is made with AI and Remotion: the narration, music and sound effects are AI-generated, and every scene is built from screenshots of the real app. See video/.



