Operations, materials, products, and intelligence — one system across 55 printer models, 4,874 filaments, and the kind of work-order chaos you only know if you've run a shop for a decade.
Every action in the building maps to one of these. Operators stay in their lane; the data crosses tabs underneath them.
Daily jobs, fleet health, print queue, production console. Live status of every printer.
12 jobs today · 87% fleet healthFilament, components, packaging, printed parts. Inventory aware of every active job.
4,874 cataloged filamentsSKUs, bills of materials, design versions, work-order generation that knows what's in stock.
BOM-aware · MMU/AMS readyOEE, First Pass Yield, cost-per-unit, predictive maintenance, demand forecast.
94.2% FPY · 73.8% OEEThe path the system walks every time a job comes in. Five stages, all visible from one screen if you ask for it.
Walk in, open the Operations tab. Fleet health, daily jobs, queue depth, material alerts — all of it surfaces before you click anything. The console knows which printers are online, which are mid-job, which are blocked, and which are offline.
87% fleet health isn't a vanity score — it's the system flagging the 13% you're about to lose if nobody touches it.
Switch to Materials. Every spool, every component, every PEI sheet on the shelves. Each filament card shows kg remaining, the printer it's loaded on, and the queue depth that will burn it. The global catalog ships with 4,874 filaments across PLA, PETG, ABS, TPU — your shop picks the ones you stock and adds its own blends.
When a job's queued, the spool it'll eat gets reserved via PrinterLoadedSpool. No double-booking white PLA again.
Pick a SKU. The BOM tells the system every filament, every component, every shipping bag it needs. Inventory checks itself in real-time against the Component + Material tables. The work order generates with stock-aware quantities, version-pinned STL files via STLMaterialAssignment, and the multi-material assignments already mapped to AMS slots.
If a Component is below safety stock or a Material is out, you see it before you start — not at hour 3 of a 4-hour print.
The Intelligence tab is the part that's quietly running in the background. First Pass Yield by part complexity (94.2% overall, 89.7% complex, 97.8% standard), OEE-lite that knows when a printer's drifting (78.4% active time × 94.2% quality = 73.8% OEE), cost-per-unit across material/energy/labor, and an AI insights panel calling out the next thing to fix.
"Prusa MK3S+ #1 could reduce material 15% with infill at 20." That's a recommendation, not a feature.
Design files live in the Vault with version control. A SKU points to a specific STLFile revision via Design, the AMS assignments for it via STLMaterialAssignment, and the GCodeFile that came out of slicing tied to a SlicingProfile. Roll back a part to v2.7 if v3.0 had a bad fillet. Nothing's lost.
The customer who ordered last Tuesday gets exactly what was on the screen last Tuesday — even if the design moved since.
The catalog, the printer specs, the BOM patterns, the failure modes — none of this was guessed at. It's the platform Mike built because he needed to.
Brand, spool weight, recommended hotend temp, bed temp, retraction settings — for every spool on the global shelf. Org-specific blends layer on top via orgId.
Decomposed into ExtruderSpecification, MotionSpecification, ElectronicsSpecification, InterfaceSpecification, AssemblySpecification. Add your fleet, it knows the geometry.
Organization, Users, PrinterModel, Printer, Design, STLFile, STLMaterialAssignment, SlicingProfile, GCodeFile, BOM — wired with referential integrity across 1,800+ lines.
Postgres for the relational core, Storage for STL/gcode binaries, Auth (Phase 2) for Email/Google/GitHub login. Row-Level Security enforces per-org isolation.
AMS / MMU slots mapped per design through STLMaterialAssignment. Color blending, soluble supports, multi-tone prints handled at the work-order level — no slicing-step drift.
Every STL revision lives forever. SlicingProfile ties a gcode build to a specific printer model + filament + STL — so a reprint from last quarter slices the same way.
What's done and what's next — saying it out loud so the system reads the way it actually is.
STLFile + GCodeFile via Supabase StorageSlicingProfile per printer × materialADMIN / OPERATOR / VIEWERPhase 2 will open access for a small group of operating shops. Reach out if you'd like to be in that group, or if you want to ship something with this stack at the back.