About this project
PrintStash is an open-source, self-hosted web application for managing a 3D printing library. It brings together files from your computer, model marketplaces, and NAS, allowing you to preview them, open them in your slicer, and keep print settings and results with each model. It runs on your own server with SQLite and local disk to get started.
Key features include:
- **Import**: Upload STL, 3MF, OBJ, STEP/STP, DXF, G-code, and PrusaSlicer binary G-code (.bgcode) files. Capture from model sites like Printables, MakerWorld, and Thingiverse via URL or browser extension. Index mounted folders, NAS shares, S3-compatible storage, WebDAV/Nextcloud, SFTP, or Google Drive in place. An OrcaSlicer post-processing hook uploads exported G-code automatically.
- **Organize**: Browse thumbnails in grid or list views, navigate nested Collections, and move models with drag-and-drop. Search by name, filename, tags, file type, material, slicer, printer model, and more. Star favorites and save filtered views. Bulk edit tags, move models, or trash them.
- **Multipart Models**: Group existing models into ordered, named pieces with alternatives. Give the group its own cover, description, tags, and guides. Reuse models across projects.
- **Preview**: Rotate and zoom source meshes in the browser with solid, X-ray, and wireframe modes. Preview plain-text G-code layer by layer. Inspect extracted dimensions, volume, triangle count, and slicer settings. Open files directly in OrcaSlicer, Bambu Studio, or PrusaSlicer via deep links.
- **Revisions**: Keep several G-code revisions per model with labels, notes, and status (known good, needs test, failed, archived). Mark one as recommended. Compare two files side by side. Review print history and import matching Moonraker jobs.
- **Print**: See printer status, progress, and temperatures. Send G-code, pause, resume, or cancel on supported printers. Queue prints or batches, route manually or to the least-busy eligible printer. Check loaded material and nozzle size against G-code before dispatch. Plan maintenance windows.
- **Materials and costs**: Manage printer and filament presets. Optionally connect Spoolman for inventory and remaining filament. Keep actual duration, measured filament use, and per-print cost from Moonraker. Use the admin Statistics dashboard to explore print counts, filament, cost, and time.
- **Share**: Keep Markdown notes, PDFs, images, and other documents with a Collection. Share a model through an expiring, read-only public link. Receive notifications via Discord, Telegram, ntfy, or generic webhooks.
- **Backups**: Restore trashed models before permanent cleanup. Run Vault audits to find missing files or integrity problems. Create, verify, and restore backups of the SQLite database, managed files, and thumbnails. Export or import a portable library archive.
- **Access**: Create local accounts and API keys, or connect OIDC/SSO. Grant view, edit, or admin access to Collections and separate view, print, control, or admin access to printers. Audit logs record changes.
Printer compatibility includes Moonraker/Klipper (stable), Elegoo Neptune 4 via Moonraker, Bambu LAN (beta), PrusaLink (beta), OctoPrint/OctoPi (beta), and Elegoo Centauri Carbon (beta).
PrintStash is in beta. Recommended installation is Docker Compose with SQLite and local disk. Images support linux/amd64 and linux/arm64. It is licensed under AGPL-3.0.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.