Repository navigation
BambuScribe v2.0.0
BambuScribe v2.0.0 transforms the project into a dual-mode platform. You can now run the entire plotting suite locally with your printer or completely serverless inside your browser via WebAssembly (Pyodide). This release also adds six new vector algorithms, a 6-stage path optimization pipeline, dynamic bounding box clipping, and stricter safety guardrails.
Dual-Mode & Serverless Web
- Serverless Web Engine: Run vector generation and G-code compilation directly in your browser at animesh-varma.github.io/BambuScribe, no Python installation or local server required.
- Auto-Detection & Web Locks: Automatically detects if you are running locally or on static hosting (like GitHub Pages). Web Mode safely locks physical hardware controls in favor of static canvas dimensions and manual contact height inputs.
New Vector Algorithms
- Centerline / Skeleton: Thins handwriting, signatures, and line art to 1-pixel spines to eliminate double-outlining.
- Archimedean Spiral: Center-outward continuous spiral with tone-modulated sine waves for plotting with zero pen lifts.
- Serpentine Squiggle: Continuous horizontal scanlines with tone-modulated wave amplitude.
- Flow Field Engraving: Directional streamlines following edge tangent fields for a classic engraved look.
- Blue-Noise Stippling & TSP Tour: Tone-weighted dot sampling, with an optional continuous single-line Traveling Salesperson tour.
- Topographic Contours: Multi-level elevation slices across image brightness levels.
Path Optimization & Dynamic Clipping
- 6-Stage Optimizer: Uses Ramer–Douglas–Peucker (RDP) decimation, travel distance sorting, and gap stitching to eliminate jerky machine moves and cut plotting times.
- Pen Width Simulation: Accurately renders physical stroke thickness on both the 2D canvas and 3D visualizer.
- Smart Bounding Box Clipping: Slices paths cleanly at canvas boundaries instead of throwing errors. Out-of-bounds segments are highlighted in red on the 3D visualizer.
Standalone G-Code & Hardware Safety
- Direct G-Code Export: Download ready-to-run
.gcodefiles equipped with a safe 4-step sequence (Pre-home pause → Auto-home → Pen-mount pause → Plot). - Strict Homing Enforcement: Physical controls and direct plots strictly require homing first (
G28) to prevent toolhead crashes.
Codebase & UI
- Modular Architecture: Refactored into clean backend Python packages and ES6 frontend modules.
- Material 3 UI: Fixed dark mode color inversions, added fast-reveal tooltips, and improved keyboard accessibility.
Known Limitations
- Skew Calibration: Angled paper boundaries cannot yet be compensated for via affine transforms.
- Camera Utilization: The live camera feed remains for visual monitoring only (no automated alignment yet).
What's Changed
- feat(core): introduce serverless web mode, expanded vector suite, and path optimization by @Animesh-Varma in #4
Full Changelog: v1.1.1...v2.0.0