|
|
4 months ago | |
|---|---|---|
| .github | 4 months ago | |
| backend | 4 months ago | |
| demo-video | 4 months ago | |
| deploy | 5 months ago | |
| docs | 4 months ago | |
| frontend | 4 months ago | |
| icons | 4 months ago | |
| mockup | 4 months ago | |
| scripts | 4 months ago | |
| static | 4 months ago | |
| tests | 4 months ago | |
| .coverage | 5 months ago | |
| .dockerignore | 5 months ago | |
| .env.example | 5 months ago | |
| .gitignore | 4 months ago | |
| .pre-commit-config.yaml | 4 months ago | |
| CHANGELOG.md | 4 months ago | |
| CODE_OF_CONDUCT.md | 4 months ago | |
| CONTRIBUTING.md | 4 months ago | |
| Dockerfile | 4 months ago | |
| Dockerfile.test | 5 months ago | |
| LICENSE | 6 months ago | |
| PLAN.md | 5 months ago | |
| README.md | 4 months ago | |
| SECURITY.md | 4 months ago | |
| bambuddy-issue-notes.txt | 4 months ago | |
| build_docker.sh | 5 months ago | |
| docker-compose.test.yml | 5 months ago | |
| docker-compose.yml | 4 months ago | |
| docker-publish.sh | 4 months ago | |
| pyproject.toml | 5 months ago | |
| requirements-dev.txt | 5 months ago | |
| requirements.txt | 4 months ago | |
| test_backend.sh | 5 months ago | |
| test_docker.sh | 4 months ago | |
| test_frontend.sh | 5 months ago | |
| update_website_wiki.sh | 4 months ago |
Self-hosted print archive and management system for Bambu Lab 3D printers
Features • Screenshots • Quick Start • Documentation • Discord • Contributing
Testers Needed! I only have X1C and H2D devices. Help make Bambuddy work with all Bambu Lab printers by reporting your experience!
| ### 📦 Print Archive - Automatic 3MF archiving with metadata - 3D model preview (Three.js) - Duplicate detection & full-text search - Photo attachments & failure analysis - Timelapse editor (trim, speed, music) - Re-print to any connected printer with AMS mapping (auto-match or manual slot selection, multi-plate support) - Archive comparison (side-by-side diff) ### 📊 Monitoring & Control - Real-time printer status via WebSocket - Live camera streaming (MJPEG) & snapshots with multi-viewer support - Fan status monitoring (part cooling, auxiliary, chamber) - Printer control (stop, pause, resume, chamber light) - Resizable printer cards (S/M/L/XL) - Skip objects during print - AMS slot RFID re-read - AMS slot configuration (custom presets, K profiles, color picker) - HMS error monitoring with history - Print success rates & trends - Filament usage tracking - Cost analytics & failure analysis - CSV/Excel export ### ⏰ Scheduling & Automation - Print queue with drag-and-drop - Multi-printer selection (send to multiple printers at once) - Per-printer AMS mapping (individual slot configuration for print farms) - Scheduled prints (date/time) - Queue Only mode (stage without auto-start) - Smart plug integration (Tasmota, Home Assistant) - Energy consumption tracking - Auto power-on before print - Auto power-off after cooldown ### 📁 File Manager (Library) - Upload and organize sliced files (3MF, gcode) - Folder structure with drag-and-drop - Rename files and folders via context menu - Print directly to any printer with full options - Add to queue without creating archive upfront - Plate selection for multi-plate 3MF files - Duplicate detection via file hash - Mobile-friendly with always-visible action buttons ### 📁 Projects - Group related prints (e.g., "Voron Build") - Track plates (print jobs) and parts separately - Auto-detect parts count from 3MF files - Color-coded project badges - Bulk assign archives via multi-select toolbar | ### 🔔 Notifications - WhatsApp, Telegram, Discord - Email, Pushover, ntfy - Custom webhooks - Quiet hours & daily digest - Customizable message templates ### 🔧 Integrations - [Spoolman](https://github.com/Donkie/Spoolman) filament sync - MQTT publishing for Home Assistant, Node-RED, etc. - Bambu Cloud profile management - K-profiles (pressure advance) - External sidebar links - Webhooks & API keys - Interactive API browser with live testing ### 🖨️ Virtual Printer - Emulates a Bambu Lab printer on your network - Send prints directly from Bambu Studio/Orca Slicer - Configurable printer model (X1C, P1S, A1, H2D, etc.) - Queue mode or auto-start mode - SSDP discovery (appears in slicer automatically) - Secure TLS/MQTT communication ### 🛠️ Maintenance & Support - Maintenance scheduling & tracking - Interval reminders (hours/days) - Print time accuracy stats - File manager for printer storage - Firmware update helper (LAN-only printers) - Debug logging toggle with live indicator - Live application log viewer with filtering - Support bundle generator (privacy-filtered) |
Plus: Customizable themes (style, background, accent) • Mobile responsive • Keyboard shortcuts • Multi-language (EN/DE) • Auto updates • Database backup/restore • System info dashboard
Real-time printer monitoring with AMS status
Print archive with 3D preview and project assignment
Re-print with AMS filament mapping preview
Built-in timelapse editor with trim, speed, and music
Group related prints into projects
Project detail view with assigned archives
Project timeline and print history
Print scheduling and queue management
Schedule prints for specific date and time
Customizable statistics dashboard
Maintenance tracking per printer
Configure maintenance types and intervals
Pressure advance (K-factor) profiles
Edit K-factor profile settings
General configuration and integrations
Smart plug control and energy monitoring
Multi-provider notification system
API keys and webhook endpoints
Virtual printer appears in Bambu Studio/Orca Slicer
Option A: Pre-built image (fastest)
mkdir bambuddy && cd bambuddy
curl -O https://raw.githubusercontent.com/maziggy/bambuddy/main/docker-compose.yml
docker compose up -d
Option B: Build from source
git clone https://github.com/maziggy/bambuddy.git
cd bambuddy
docker compose up -d --build
Open http://localhost:8000 in your browser.
Multi-architecture support: Pre-built images are available for
linux/amd64andlinux/arm64(Raspberry Pi 4/5).macOS/Windows users: Docker Desktop doesn't support
network_mode: host. Edit docker-compose.yml: comment outnetwork_mode: hostand uncomment theports:section. Printer discovery won't work - add printers manually by IP.Linux users: If you get "permission denied" errors, either prefix commands with
sudo(e.g.,sudo docker compose up -d) or add your user to the docker group.
# Clone and setup
git clone https://github.com/maziggy/bambuddy.git
cd bambuddy
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
# Run
uvicorn backend.app.main:app --host 0.0.0.0 --port 8000
Open http://localhost:8000 and add your printer!
Need detailed instructions? See the Installation Guide
Developer Mode allows third-party software like Bambuddy to control your printer over the local network.
Note: Developer Mode disables cloud features but provides full local control. Standard LAN Mode (without Developer Mode) only allows read-only monitoring.
Full documentation available at wiki.bambuddy.cool:
| Series | Models |
|---|---|
| H2 | H2D, H2S |
| X1 | X1, X1 Carbon |
| P1 | P1P, P1S, P2S |
| A1 | A1, A1 Mini |
| Component | Technology |
|---|---|
| Backend | Python, FastAPI, SQLAlchemy |
| Frontend | React, TypeScript, Tailwind CSS |
| Database | SQLite |
| 3D Viewer | Three.js |
| Communication | MQTT (TLS), FTPS |
Contributions welcome! Here's how to help:
Document — Improve wiki and guides
# Development setup
git clone https://github.com/maziggy/bambuddy.git
cd bambuddy
# Backend
python3 -m venv venv && source venv/bin/activate
pip install -r requirements.txt
DEBUG=true uvicorn backend.app.main:app --reload
# Frontend (separate terminal)
cd frontend && npm install && npm run dev
See CONTRIBUTING.md for guidelines.
MIT License — see LICENSE for details.
Made with ❤️ for the 3D printing community
Join our Discord •
Report Bug •
Request Feature •
Documentation