From printer control to complete 3D-print operations.
A local, self-hosted platform for hobbyists, print farms, small businesses, and developers.
Origin · Comparison · Capabilities · Direction · Quick start · Documentation
PrintOps brings the operational work around 3D printing into one place. It combines a proven Bambu printer-management foundation with projects, inventory, procurement, costing, customer, order, and document workflows. You can start with one printer at home and keep the same platform as the work grows into a farm or a business.
PrintOps stands on the foundation created by maziggy. His idea, creativity, and sustained work turned Bambu printer management into a capable self-hosted platform with bambuddy. We are sincerely grateful for that foundation.
PrintOps is an independent fork. It preserves bambuddy's proven printer-management core while pursuing a broader goal: connecting printing with materials, costing, customers, orders, and business documents in one coherent operations platform.
The repositories now evolve independently, so their releases, migrations, interfaces, and feature compatibility can diverge over time.
The projects share a technical lineage but follow different product directions. This comparison is about focus, not about declaring a winner.
| Area | bambuddy | PrintOps |
|---|---|---|
| Core purpose | A self-hosted command center for Bambu printers and print farms | A broader operations platform built around 3D-print production |
| Code lineage | The original project and upstream foundation | An independent fork whose domain models, migrations, APIs, and workflows evolve separately |
| Printer workflows | The primary product focus | Retained as the operational production core |
| Operational scope | Deep printer control, automation, queues, archives, files, and fleet workflows | Extends printer operations with warehouse, procurement, costing, customer, order, and document workflows |
| Interface | A feature-rich printer command center | A separate PrintOps identity and navigation organized around Printers, Projects, Warehouse, and Orders |
| Best fit | Users primarily seeking deep Bambu printer control and automation | Hobbyists, farms, businesses, and developers who want production connected to the work around it |
| Direction | Continued depth in printer management and automation | An end-to-end flow from model and material to production, delivery, and compliant documents |
PrintOps is more than a visual rebrand, but that does not make bambuddy the wrong choice. bambuddy remains a strong, focused project for users whose primary need is printer control and automation.
- Hobbyists get local control, useful automation, organized projects, and an inventory that can grow with the workshop.
- Print-farm operators get a shared view of printers, queues, files, materials, maintenance, and production work.
- Small businesses get the foundation for connecting stock, purchasing, costing, customers, quotations, orders, and documents.
- Developers get an AGPL-licensed, self-hosted Python and TypeScript codebase with automated tests, API-oriented services, and room for integrations.
- Real-time printer monitoring and control, queues, scheduling, archives, profiles, maintenance, cameras, and notifications.
- Projects and file-library workflows, including optional server-side slicing and reusable slicing pipelines.
- Multi-printer and print-farm workflows carried forward from the shared bambuddy foundation and adapted as PrintOps evolves.
- Filament inventory plus structured storage locations and stock visibility.
- Material inventory for purchased parts, hardware, and consumables.
- Physical and reserved stock tracking, opening balances, minimum-stock signals, and auditable stock movements.
- Central supplier records with preferred and alternative procurement offers, package quantities, prices, links, and lead times for material and filament.
- Business profiles, customer records, and permissions.
- Costing workspaces that connect project, material, machine, labor, and overhead data.
- Foundations for quotations, orders, reservations, and related commercial workflows.
- Local, self-hosted operation with persistent data under your control.
- A Python/FastAPI backend and React/TypeScript frontend with REST and real-time interfaces.
- Modular printer API routers with CI-enforced Python size budgets, keeping the printer-control surface maintainable as the fork grows.
- Role-based permissions, API keys, integrations, responsive layouts, and a multilingual interface.
This is product direction, not a claim that every workflow below is complete in the current release.
- One connected operating flow: enquiry → costing → quotation → order → purchasing and reservation → production → delivery → invoicing.
- Complete business documents: quotations, order confirmations, delivery notes, invoices, corrections, credit notes, reminders, and related records.
- Standards-compliant electronic invoicing: structured formats and validation for increasingly digital accounting workflows.
- Safer self-hosted secrets: TOTP and OIDC client secrets are encrypted at rest by default, and new plaintext secret writes require an explicit recovery opt-in.
- Deeper planning and traceability: purchasing, production capacity, material demand, document history, reporting, and auditability.
- A coherent product experience: consistent workflows and visual language across printer operations, projects, warehouse, orders, and settings.
The supported installers configure PrintOps, persistent data, and logs. Docker is the recommended deployment method.
Linux or macOS:
curl -fsSL https://raw.githubusercontent.com/ichwars/PrintOps/main/install/docker-install.sh -o docker-install.sh
chmod +x docker-install.sh
./docker-install.shWindows PowerShell:
powershell -ExecutionPolicy Bypass -Command "iwr -useb https://raw.githubusercontent.com/ichwars/PrintOps/main/install/docker-install.ps1 -OutFile docker-install.ps1; .\docker-install.ps1"Open http://localhost:8000 after installation. Docker Desktop cannot provide
LAN printer auto-discovery, so Windows and macOS users may need to add printers
by IP. See the complete installation guide for Docker,
native installation, custom ports, updates, and troubleshooting.
Settings -> Order Management -> Format & Preview provides a versioned, structured editor for all commercial-document layouts. It renders genuine multi-page A4 or Letter PDFs on the left and keeps the compact layout controls on the right. Draft changes autosave; only blocker-free, validated versions can be published.
The same offline renderer is used for previews, final PDFs and external snapshot exports. Final commercial PDFs are PDF/A-3u. ZUGFeRD keeps the PDF as the original with validated XML attached; XRechnung keeps the XML as the original and labels its PDF as a separate visual copy. Layout assets, issued artifacts, XML evidence and validation reports are included in local and private-Git backups with SHA-256 receipts.
WeasyPrint and veraPDF are pinned build/runtime components. Production and installer builds must stage them before startup; PrintOps never downloads a renderer or validator while processing a document. The readiness endpoint /api/v1/document-render/readiness reports the installed versions and blocks final release when a required component is unavailable.
The backend uses Python, FastAPI, and SQLAlchemy. The frontend uses React, TypeScript, and Vite.
# Backend
python -m venv .venv
# Activate .venv for your shell, then:
pip install --require-hashes -r requirements-dev.lock.txt
uvicorn backend.app.main:app --reload --host 0.0.0.0 --port 8000 --loop asyncio
# Frontend, in a second shell
cd frontend
npm install
npm run devThe frontend development server runs on http://localhost:5173 and proxies API
requests to the backend. The production frontend build is written to static/,
where the backend serves it.
Read CONTRIBUTING.md for prerequisites, issue and pull-request workflow, code style, internationalization, permissions, tests, and required documentation updates.
PrintOps is under active development. The printer-management foundation is broad and proven; the warehouse and commercial domains are evolving quickly. Sections under Available today describe shipped capabilities. Sections under Where PrintOps is going describe intended outcomes and must not be read as a promise that every workflow is finished in the current release.
- Documentation index
- Installation guide
- Updating PrintOps
- Contributing guide
- Code of Conduct
- Security policy
Contributions are welcome. Start with an issue so scope and direction can be agreed before implementation.
PrintOps is licensed under the GNU Affero General Public License v3.0. When you distribute a modified version or provide access to it over a network, the corresponding source must be made available under the terms of the AGPL.
PrintOps is an independent fork of bambuddy. It is not affiliated with, maintained by, or endorsed by Bambu Lab. Bambu Lab, Bambu Studio, MakerWorld, and related names are trademarks of their respective owners.