Loading…
The server is slow to answer.
Sign in
Spool inventory
Set up your account
Enter the username and one-time code you were given, then choose a password.
Saved
Drop an Orca project or sliced plate file here
or
You can choose both files at once.
Recent jobs
Newest first. Open one to carry on, or delete the ones you no longer need.
No jobs yet. Open an Orca project above to make the first.
At a glance
Needs you
Filament used
On hand by material
Now: every spool with filament left.
Stock is always now; the period does not change this tab.
Your shelf
Every filament on hand in its own colour, sized by grams left.
| Filament | On hand |
|---|
In stock now
Every spool with filament left, whatever the period.
| Material | Spools | On hand | Worth left | Paid |
|---|
How this is counted
Worth left is the price you paid scaled to what is left on the spool. Click a slice or a row to narrow every card to it; click it again, or Show everything, to undo.
Restock
Next up
How this is counted
The cost is the last price you paid for each filament. Next up lists filaments within 10 points above your reorder level, which is the slider in Settings, Inventory. Stock is measured against one full spool, as on the Filament tab.
Runs out in
At your pace over the last four weeks, soonest first.
How this is counted
Pace is the grams used in the last 28 days. A filament needs at least two recorded drops in that time before it gets an estimate, so it does not guess from one weigh-in.
Needs attention
Open spools worth a look.
Dry before printing
How this is counted
Dry before printing: open spools of a material marked "Dry before use" that have been open for a month or more; the drying guide comes from Material facts.
Sealed, by age
How this is counted
Unopened spools with filament left, by how long ago you bought them. Money is what you paid; spools with no price count as nothing.
Longest open
Opened spools with filament left.
How this is counted
Sealed spools are not listed. Filaments marked "Dry before use" are worth drying once they have been open a few months.
Filament used and purge waste
Purge waste, running total
| Month | Used (g) | Purge total (g) |
|---|
How this is counted
Filament used: a drop in remaining grams counts as use; corrections upwards do not.
Purge waste: the running total from your purge bin readings, on its own scale. It only goes up; emptying the bin does not reset it. Your spool weights already include this filament, and the search does not narrow the line.
Most used filaments
Grams used in this period.
| Filament | Used (g) | Weigh-ins |
|---|
How this is counted
Click a filament to open it on the Filament tab.
Most used colours
Grams used in this period, by colour family.
| Colour | Used (g) | Filaments |
|---|
How this is counted
Grouped the same way as "Colour" on the Filament tab.
Recently used
The latest drop for each filament, whatever the period.
Spent
Each bar is what you spent; its label gives the dollars and how many spools.
| Month | Spent | Spools |
|---|
How this is counted
Spools count by purchase date, removed spools included. A spool removed on the day it was added counts as a mistake, not a purchase.
Price per kilogram
What a kilogram cost you, from spools bought in this period.
| Material | Spools | Average | Cheapest | Dearest |
|---|
How this is counted
Price divided by the spool's full weight. Spools with no price are left out.
Price changes
Filaments bought more than once, all time.
| Filament | First | Latest | Change |
|---|
How this is counted
First and latest price by purchase date. A price of $0.00 is treated as a missing price, not a drop, and flagged so you can fix it.
Recently added
Newest spools by purchase date, whatever the period.
Label scanning
Calls made to your model provider in this period.
How this is counted
Token counts come from the provider's reply. Your provider's billing page has the money.
Event log
Every change you make, newest first.
What is in the log
Weighings, corrections, spools and filaments added, edited or removed, job steps, purge readings, empty spools, store links, label scans, imports, restores, exports and settings that change what the app does. Edits are logged from 4 Oct 2026; before that the log holds what the app had already recorded, back to the first import. The search and period on the left narrow it. Nothing here can be changed or undone.
Users
Every account on this site. Status comes from the users and sessions tables; nothing else is read.
| Username | Status | Created | Last seen | Role | Actions |
|---|
This cannot be undone. It removes the account, its sign-ins, and every filament, spool, weight change, store link, key and setting it owns.
Give them this code and the link. It works once and expires in 24 hours. It is not shown again; if it is lost, use New setup code.
Setup page: spool.bdlfoundry.dev/setup
New user
Creates the account and a one-time setup code. The person opens the setup page, enters the code and chooses their own password. You never see the password.
Inventory
How the Filament tab decides what needs attention.
A filament is listed under Low inventory when the total left across all its spools is at or below this share of one full spool. Ten nearly empty spools and one full one count as more than a spool.
Filaments
Filaments with no filament left on any spool. Delete the ones that were never real, so they stop appearing in Statistics and in Merge.
| Select | Filament | Spools ever | Last change | Action |
|---|
This cannot be undone and is not covered by an export taken afterwards. It removes:
A filament that still has filament on a spool is not listed. Remove its spools on the Filament tab first, then it appears here. Merge stays in the open filament row.
Stores
Where the Reorder card sends you. Put {q} where the search words go. Links save when you leave the box.
One row for every brand in your inventory. Empty the box to go back to the built-in link.
Retailers marked Show appear in every Reorder card.
Empty spool weights
What each empty reel or core weighs, with no filament on it. Total weight on the scale − empty spool weight = filament left. Changing a weight updates every spool that uses it. Changes save when you leave the box.
Weigh a new spool still sealed in its bag. Open it, then weigh the bag and the desiccant together. What is left after the bag and the filament on the label is the empty spool weight.
Fill in the three weights.
Purge bin
Optional. The filament purged at toolhead changes, weighed in its bin at the end of a job. It is a log over time, not tied to any job; Statistics shows it by week, month and year. Your spool weights already include this filament.
What the bin weighs with nothing in it. Saves when you leave the box.
Entered on a job once its spools are weighed back. Each counts what went in since the reading before, or since the empty bin after one marked emptied. Newest first.
Label scanning
Scanning sends the photo to a model provider on your own key, and your account with them pays: about three cents a scan on Claude Opus 5.
Stored encrypted and never shown again. The active key is the one scans use. Keys come from platform.claude.com under API keys.
When the label does not say the material, or gives no temperatures, a second call on Claude Sonnet 5 searches for the brand and SKU and fills only what is still empty. About 7 cents extra on the scans that need it.
Stops a lost session from running up your bill. Saves when you leave the box.
Data
Your inventory is yours. Take a copy any time; put it back any time.
Everything you own as one JSON file: filaments, spools, weight history, store links, settings.
A Spoolio export, or an export from this app to restore it. Importing the same file twice adds nothing, and nothing already here is overwritten.
Import complete
- Types created
- 0
- Spools created
- 0
- Spools skipped
- 0
Account
Password and sign out are under the Account button. This card is only for leaving.
Removes the account and everything in it. Asks for your password and the word delete. Take an export first.