FROM THE WORKBENCH

Notes from the vault.

Release notes, field guides, and hard-won lessons from organizing real 3D-printing workflows.

114 published notes
17 topics covered

ALL NOTES

113 entries
GUIDES

Makerspace print library: roles, logins, audit

PrintStash handles makerspace access control: per-member logins, collection roles, per-printer permissions, optional OIDC, audit trail with secrets redacted.

GUIDES

Manage files across multiple Klipper machines

Per-machine file management works up to about two printers, then becomes the small-farm bottleneck. Where the line sits, and what a fleet-queue library changes.

SPOOLMAN

Which self-hosted tools connect to Spoolman?

Moonraker, an OctoPrint plugin, and a few bridges feed Spoolman directly. Where each connection lives, and which layer ties consumption to a finished print.

GUIDES

Sync a printer's SD card with a central library

Two-way SD sync only exists on Klipper, where the card is a server folder. Elsewhere pick a direction of truth: push from the library or pull recorded history.

PRINTERS

Does your printer limit self-hosted tools?

Buying a printer fixes your control stack. Your model library need not follow: what five printer interfaces expose, what stays portable, and what is still beta.

GUIDES

Back up Docker volumes for a 3D print library

Which volume holds the database, model files, and encryption key, why the built-in archive beats copying a live volume, and what a snapshot cannot restore.

COST-TRACKING

Track real filament cost per print, self-hosted

Cost per print is grams over 1000 times your price per kilogram. Which half a self-hosted stack measures rather than estimates, and where the number ends up.

RELEASES

PrintStash v0.12.1: container startup reliability

Why some API containers crash-looped right after their database migrations finished, the two environment variables that fix it, and who needs to care.

COMPARISONS

3D printer ecosystems for self-hosted software

Klipper machines run any software, Bambu needs LAN mode plus Developer Mode, Prusa sits in between, and Elegoo is split. What each interface lets software do.

GUIDES

Send prints to an Elegoo Centauri Carbon

PrintStash v0.11.3 added G-code upload for the Centauri Carbon and Carbon 2. How SDCP and MQTT differ, what setup needs, and how thin the hardware evidence is.

GUIDES

Can you manage a 3D printer farm from a phone?

PrintStash runs on a phone as a PWA: the farm at home or away, over WireGuard, Tailscale, alerts via ntfy or Telegram. Offline means the shell, not the library.

GUIDES

Manage multiple 3D printers from one dashboard

What a self-hosted multi-printer dashboard shows: live state for every machine of any brand, aggregate stats over prints, and where the numbers stop comparing.

GUIDES

Put a self-hosted 3D print library behind SSO

PrintStash supports OpenID Connect, so members sign in with the identity provider you run. What group mapping does and does not control, and what stays manual.

PRINT-FARM

Customer job submission for a small print farm

Intake sits in front of the library, not inside: an email or a file drop, a rule for files to reach production. What each channel costs and where the job ends.

OPINION

What makes a print library production grade

Four testable properties that separate infrastructure from a hobby project, an honest score for PrintStash at v0.11.4, and what the category still lacks.

ELEGOO

Self-hosted print management for Elegoo

Your Elegoo sets the ceiling: the Neptune 4 runs Klipper for full capability, while the Centauri Carbon uses a beta native provider without file inventory.

NAS

Sync STL files between a PC and a NAS reliably

Pick a direction and stick to it: a mount, a one-way rsync push, or Syncthing for two-way. Plus what changes when a library indexes the NAS folder in place.

RELEASES

PrintStash v0.12.0: material-aware dispatch, safer first run

Preflight compares material and nozzle before a send. Fleet batches gain copies and release gates. Startup no longer deletes unindexed files. API ships lite.

PRINT-FARM

Queue and schedule prints across a printer farm

What a fleet queue does: the three routing strategies, what makes a printer eligible, drain and maintenance windows, and the /api/v1/fleet endpoints in full.

GUIDES

Filament, cost, and which revision worked

Where a print record should live, which numbers are measured and which estimated, and how to read filament use and cost per model, revision, and printer.

COMPARISONS

Is there a better Moonraker file browser?

Moonraker's file manager lists sliced output on one machine. How to tell whether you need a different front-end, a library behind it, or neither.

PRINT-FARM

A central G-code repository for your print farm

A central G-code repository is one versioned store slices land in and printers read from. How the known-good verdict is recorded, and how files reach machines.

GUIDES

Easiest 3D printing tools for Docker Compose

Which 3D printing tools install in one Compose command, by services and values to edit first, plus what you do by hand. Includes the minimal PrintStash install.

GUIDES

Self-host a private Thingiverse-style library

How much of a public model site you can reproduce: previews, search, tags, and collections, but no catalogue, comments, or galleries, plus the sharing story.

PRINT-FARM

Does a small print farm need an ERP?

Quoting, stock, and cost accounting live outside a file library. What FilaOps and Printago cover, why OctoFarm is not it in 2026, and where PrintStash stops.

GCODE

Get reproducible prints across a fleet

Deterministic slicing makes the file identical, not the machines. What a pinned build pins across a fleet, and where the machine-to-slice record lives.

GUIDES

Repair non-manifold STL errors before print

What holes, normals, self-intersections, and non-manifold edges do to a slice, which tools report and which fix them, and two common repair tools unsupported.

GUIDES

Organize STL files by fixing how they arrive

Model libraries decay one file at a time, not all at once. The four ways files enter, what to do at each, and why intake beats another folder reorganization.

GUIDES

Managing the STL library after the first scan

What changes once a library is indexed: scan cost, taxonomy rot, browsing performance at scale, and the backup boundary that catches people out.

VERSIONING

Version control for 3D model files: the limits

Sliced output gets labels, outcomes, and a recommended marker. Source meshes get an ordered history and nothing else. Where the line falls, what to do past it.

SELF-HOSTED

What an open source STL library license means

AGPL and Apache 2.0, what each obliges when you self-host a 3D model library, plus the two things open source does not guarantee regardless of license.

REFERENCE

What is STL file management software?

Defined against the five tools it's confused with: cloud drives, slicers, print controllers, model marketplaces, and organizers. What belongs and what does not.

GUIDES

Organize your STL library, keep it simple

Four ways to keep a model collection in order, from a folder tree to a library wired to the printers, and which one your collection has outgrown.

GCODE

Can you version control G-code like software?

Git handles the inputs well and the sliced output badly. How a pinned-slicer build regenerates G-code deterministically, and where the print record has to live.

GUIDES

Should you store print settings in 3MF or STL?

STL cannot hold settings, so the question is when a 3MF project earns its keep, which format keeps the geometry, and where a library reads settings instead.

GUIDES

Automatically tag and organize 3D model library

Slicer metadata, printer profiles, and content hashes arrive untagged. What a model is for never does, so keep a short tag list and automate the rest.

GUIDES

Managing a mixed Klipper and OctoPrint fleet

One library for machines that speak different protocols: what each provider lacks, how to keep 0.4 and 0.6 slices straight, and why cost data differs.

GUIDES

Auto-upload OrcaSlicer G-code to your library

Set up OrcaSlicer's post-processing hook so every export lands in a self-hosted library, and what it does not do: file the slice as a revision.

GUIDES

Print over LAN without vendor cloud services

Which printers keep working with the vendor cloud off, how to set up a fully local slice-to-print workflow, and what you give up by leaving the cloud behind.

GUIDES

Sync a printer's files with a central library

Printer file sync indexes and correlates the machine's G-code against your library instead of copying files back, and tells you when it guesses.

RELEASES

PrintStash v0.11.4: large libraries and stricter data safety

Global cursor browsing, bounded archive work, safer deletion and sessions, a single-process deployment contract, and SeaweedFS for the bundled S3 profile.

GUIDES

Version-control slicer profiles across printers

Put your slicer's preset files in Git, keep them in sync, and use the settings baked into each G-code file to prove which profile produced a good print.

GUIDES

What to look for in a self-hosted 3D manager

Nine criteria that separate a model library you keep from one you abandon, each with a test you can run on a trial instance, plus the things people overweight.

RELEASES

PrintStash v0.11.3: Centauri Carbon upload and safer backups

Elegoo Centauri Carbon and Carbon 2 receive G-code over the network, spool selection warns before a print runs out, and backups capture a consistent snapshot.

PRINT-FARM

Best print farm software for Klipper printers

The answer depends on the bottleneck: PrintStash for the file library and fleet queue, O.D.I.N. or SimplyPrint for monitoring, print-farm-manager for dispatch.

GUIDES

Send G-code to multiple printers from one app

How a self-hosted fleet queue routes G-code across printers: what one queued job means, how least-busy routing works, and which providers can receive files.

GUIDES

Find duplicate 3D models by content, not name

'By content' means two things: byte-identical hashes (dedupe tools) or geometric similarity (CAD part search). Which you need, and what PrintStash does.

GUIDES

Connecting OctoPrint to PrintStash

Set up the beta OctoPrint provider with an app key: live status, upload and start, remote file inventory, and job control beside your existing instance.

COMPARISONS

PrintStash vs Manyfold: 3D print file management comparison

A head-to-head look at PrintStash and Manyfold: G-code revisions and printer providers against catalogue metadata, ActivityPub federation, and format breadth.

COMPARISONS

PrintStash vs Manyfold vs STL Shelf, compared

Compare PrintStash, Manyfold, and STL Shelf on G-code revisions, printer integration, formats, NAS indexing, deployment, sharing, and price.

COMPARISONS

PrintStash vs STL Shelf: which library fits your workflow?

Compare PrintStash and STL Shelf on G-code revisions, printer connections, file versioning, storage requirements, hosting model, and price.

GUIDES

Connecting a Prusa printer to PrintStash through PrusaLink

Set up the beta PrusaLink provider for local status, upload and start, remote file inventory, and job control, without Prusa Connect cloud.

PRINT-FARM

Self-hosted print farm management for Bambu Lab

Bambu Farm Manager, bambuddy, and multi-brand tools compared for a cloud-free Bambu farm, plus what the authorization control means for third-party tools.

PRINT-FARM

Self-hosted print farm management for Klipper

How a Klipper farm splits into per-printer control, job dispatch, and a file library, with the current self-hosted options for each layer and their licensing.

RELEASES

PrintStash v0.11.1: Vault audit, per-printer access, i18n

Quick and Full vault audits with repair, restart-safe pending imports with a browser capture helper, structured filters, and per-printer access control.

RELEASES

PrintStash v0.11.0: fleet, scheduling, SSO, PWA, and i18n

Fleet queue with routing, maintenance-aware scheduling, restart-safe jobs, OIDC login, installable offline shell, and English/Spanish localization.

COMPARISONS

PrintStash vs OctoPrint: library or printer control?

OctoPrint runs a printer. PrintStash organizes the models, G-code revisions, and print history around it. Compare them and use both together.

COMPARISONS

Best self-hosted 3D print file manager of 2026

Which self-hosted 3D print file manager to pick: PrintStash, Manyfold, GyroidVault, STL Shelf, Makers Vault, Printventory, compared on revisions and printers.

COMPARISONS

PrintStash vs Manyfold vs Orynt3D: server or desktop?

Compare PrintStash, Manyfold, and Orynt3D by deployment, file storage, metadata, sharing, G-code revisions, and printer workflow.

RELEASES

PrintStash v0.10.0: library workflow polish

Bulk editing, saved views, favorites, richer artifact comparison, and portable library migration make large PrintStash libraries faster and safer to manage.

RELEASES

PrintStash v0.9.0: five printer providers

PrintStash v0.9.0 added OctoPrint, PrusaLink, and Elegoo support, enabled Bambu LAN upload and start, and made provider capabilities explicit.

GUIDES

How PrintStash fits alongside OctoPrint, Fluidd and Mainsail

Keep OctoPrint, Fluidd, or Mainsail for printer control. Add PrintStash when you need a searchable library, G-code revisions, and print history.

GUIDES

How to use PrintStash's API for automation

Use PrintStash's REST API from scripts: authenticate with an API key, upload models or G-code, trigger a library scan, and inspect the live API contract.

GUIDES

How to automate PrintStash backups to S3

Create full PrintStash backups, mirror them to an S3-compatible bucket, and schedule the API call with credentials you can revoke.

GUIDES

Set up a makerspace 3D printing library with PrintStash

Set up a shared PrintStash library with individual accounts, collection roles, slicer API keys, expiring links, and a recoverable deletion policy.

GUIDES

Migrate from folders to PrintStash without breaking anything

Index an existing model folder or NAS share in place, review the result, and move to PrintStash without changing the paths other tools already use.

GUIDES

How to connect PrintStash to multiple Klipper printers

Connect several Moonraker/Klipper printers, check their individual capabilities and file inventories, and send a known G-code revision to the right machine.

GUIDES

How to organize thousands of STL files

Index a large STL library without moving it, then use collections, tags, content hashes, and parsed metadata to make the useful models findable.

GUIDES

Organize STL, 3MF, and G-code files

A practical folder and metadata system for source models, slicer projects, and G-code, with or without a dedicated self-hosted library.

GUIDES

How to build a print farm workflow with PrintStash

Use PrintStash as the file and print record for a small farm, with known G-code revisions, provider-aware sending, measured or estimated costs, and alerts.

GUIDES

A private Printables alternative with Docker

Run a private 3D model library with Docker, index files from local or NAS storage, and keep search, previews, and print records on your own server.

GUIDES

Run PrintStash on a Raspberry Pi or ARM NAS

Install on linux/arm64, size for mesh previews, and choose full or lite API images. STEP previews reached ARM in v0.12.0, with limits that bite harder on a Pi.

GUIDES

Put PrintStash behind a reverse proxy with TLS

Use the production Compose file with Caddy, Traefik, or nginx, keep the API off the host network, and preserve uploads and WebSocket status updates.

GUIDES

Share a 3D model with an expiring link

Create a read-only link for one PrintStash model, choose its lifetime and visible revisions, and enable file downloads only when needed.

GUIDES

G-code revisions in a 3D printing workflow

Track which slice printed well: naming conventions, Git, controller stats, or a library that models revisions, plus a worked setup and wasted-filament mistakes.

RELEASES

PrintStash v0.8.5: redact audit secrets and fix S3 startup

PrintStash v0.8.5 scrubbed credentials from audit history, rate-limited login, repaired S3 bucket creation, and reduced repeated database work.

GUIDES

Getting started with PrintStash

Install PrintStash with Docker Compose, set the required secret, create the first admin account, add a model, and connect a local printer.

COMPARISONS

PrintStash and the alternatives: which job are you solving?

Compare PrintStash with Manyfold, STL Shelf, Obico, SimplyPrint, and OctoEverywhere as libraries, monitors, remote access, or farm tools.

RELEASES

PrintStash v0.8.2: drag models into folders

PrintStash v0.8.2 added drag-to-move in the model grid and fixed remember-me sessions, duplicate collection refetches, and the light Compose file.

PRINT-FARM

A self-hosted stack for a small print farm

Combine a shared model library, local printer controllers, Spoolman, notifications, and backups for a small farm without per-printer SaaS fees.

GUIDES

SQLite or Postgres, local disk or S3?

Choose a PrintStash database and file backend based on the failure modes you can operate, starting with the default SQLite and local-disk stack.

GUIDES

Monitoring PrintStash with Prometheus and Grafana

Scrape PrintStash request latency, ingestion results, and printer status with Prometheus, then use the health endpoint for direct readiness checks.

GUIDES

Connecting a Klipper printer to PrintStash through Moonraker

Connect PrintStash to Moonraker for live status, remote files, upload and start, printer controls, measured filament use, and print history.

GUIDES

Share a model without moving it to the cloud

Use a narrow, expiring PrintStash link for model review while keeping the rest of a self-hosted library private.

GUIDES

Track filament use with Spoolman and PrintStash

Connect Spoolman, import filament presets, select a spool for each job, and write measured Moonraker consumption back without counting it twice.

GUIDES

Collections and tags to find the right model

Use one nested collection tree for browsing, tags for repeated properties, and attached documentation for the notes a model grid cannot carry.

DEV NOTES

How PrintStash avoids running out of RAM on large meshes

A technical look at triangle estimates, cgroup-aware memory budgets, render concurrency, chunked rasterization, and safe preview skipping.

RELEASES

PrintStash v0.8.0: Spoolman and collection documents

PrintStash v0.8.0 connected print history to Spoolman inventory, added one-way filament sync and measured write-back, and introduced collection documents.

RELEASES

PrintStash v0.8.1: live Moonraker controls

PrintStash v0.8.1 added Moonraker temperature, preheat, cooldown, homing, and emergency-stop controls, plus mobile scrolling and thumbnail fixes.

SECURITY

What PrintStash means by a trusted network

A practical look at PrintStash authentication, collection roles, share links, import guards, stored secrets, and the limits of its security model.

DEV NOTES

Read PrusaSlicer binary G-code with the stdlib

How PrintStash reads metadata and thumbnails from PrusaSlicer .bgcode files without decoding the heatshrink-compressed toolpath.

GUIDES

When a print finishes: notifications in PrintStash

Configure PrintStash alerts for completed, failed, or cancelled prints and offline printers through Discord, Telegram, ntfy, or a signed webhook.

GUIDES

Keep STEP files beside the printable mesh

Store STEP and STP sources with STL, 3MF, and G-code files, preview CAD geometry in the browser, and keep the original download intact.

RELEASES

PrintStash v0.7.3: read PrusaSlicer BGCODE metadata

PrintStash v0.7.3 added safe metadata and thumbnail extraction for PrusaSlicer binary G-code while leaving toolpath preview and printer send disabled.

GUIDES

Import from Printables, MakerWorld, Thingiverse

Import supported Printables, MakerWorld, and Thingiverse pages, handle MakerWorld authentication, and preserve folders without storing duplicates.

RELEASES

PrintStash v0.7.1: folder uploads and tighter memory limits

PrintStash v0.7.1 added whole-folder upload, cgroup-aware mesh limits, serialized and chunked rendering, and a correct all-models count.

RELEASES

PrintStash v0.7.2: automatic database migrations

PrintStash v0.7.2 moved Alembic migrations into the container startup path and kept collection context after model deletion and logo navigation.

GUIDES

Running PrintStash on Unraid

Install the PrintStash API and frontend templates on Unraid, put them on the required custom Docker network, and map persistent and library storage safely.

RELEASES

PrintStash v0.7.0: print notifications and safer mesh scans

PrintStash v0.7.0 added webhook, Discord, Telegram, and ntfy alerts, improved thumbnails, guarded large-mesh scans, and fixed G-code metadata.

GUIDES

Mirror your NAS folder into PrintStash without moving files

Index a local or NAS folder where it already lives, mirror its directory tree as collections, and keep scans safe when the network mount disappears.

GUIDES

G-code revisions and known-good verdicts

Keep each G-code revision with its source model, record why it exists, and separate a successful known-good slice from the one you recommend next.

BAMBU

Print to Bambu over LAN without Bambu Cloud

Turn on LAN Only and note the access code, then send G-code from any tool on your network. PrintStash's beta Bambu provider does this locally, with limits.

RELEASES

PrintStash v0.6.7: import marketplace pages and collections

PrintStash v0.6.7 expanded URL import across Printables, MakerWorld, and Thingiverse, including collection review and authenticated MakerWorld downloads.

GUIDES

Backups that actually restore

Create the archive in the app, mirror it off the host, and restore it to a scratch stack. What a backup owns, what it leaves to your NAS, and how recovery runs.

OPINION

Why self-host a 3D printing library?

Keep downloaded models, private designs, sliced revisions, notes, and print history on storage you control, with the maintenance tradeoffs stated plainly.

RELEASES

PrintStash v0.6.6: metrics, health checks, and Unraid

PrintStash v0.6.6 added Prometheus metrics, more useful health output, Unraid templates, and recovery for shared-volume scans interrupted by a restart.

RELEASES

PrintStash v0.6.3: safer imports and reliable print history

PrintStash v0.6.3 fixed Bambu job states, repeated-print history, pagination, Postgres search, G-code parsing, archive paths, and cloud backup listing.

RELEASES

PrintStash v0.6.4: restore and download backups in the UI

PrintStash v0.6.4 added backup restore and archive download actions to Settings, with an explicit destructive confirmation before recovery.

RELEASES

PrintStash v0.6.5: first-run login and a smaller frontend

PrintStash v0.6.5 fixed the inactive UI immediately after setup, split route bundles, and removed React Query Devtools from production builds.

COST-TRACKING

What does a 3D print actually cost?

Separate measured filament and duration from electricity, failures, machine wear, and labor so a hobby estimate or customer quote is honest.

RELEASES

PrintStash v0.6.0: index a NAS folder in place

PrintStash v0.6.0 introduced external libraries, with in-place folder indexing, write-back, collection mirroring, periodic scans, and unmounted-share safety.

RELEASES

PrintStash v0.6.2: scheduled and watched shared volumes

PrintStash v0.6.2 renamed external libraries to shared volumes and added cron schedules, local filesystem watching, and network-mount fallback.

RELEASES

PrintStash v0.5.0: first tagged release

The first tagged PrintStash release added URL and ZIP import, STEP previews, public share links, measured Moonraker jobs, and revision outcomes.