Spring 2026 update — precision pack, smarter exports & faster UX
Sprint 4 and Sprint 5 ship a workshop-grade precision pack (kerf tolerance, start/end trim, cost per cut), Pro+ DXF/SVG exports, cross-project saved offcuts, and skeleton-loading UX across the app.
We have shipped two large sprints worth of improvements over the past three weeks. This post bundles the user-facing changes you can use right now.
Workshop-grade precision
Every cutting plan now respects three new physical-shop realities:
- Kerf tolerance (±mm) — Free+. The optimizer first tries an exact-fit placement; only when nothing fits does it allow up to ±tolerance of give. Useful when your blade jitters between 3.0 and 3.2 mm or when imported demand sizes have rounding noise.
- Start / End trim (mm) — Free+. The effective length of every bar or sheet is reduced by
start_trim + end_trim. The damaged clamped edge stops being treated as offcut material, so your scrap reports match what the workshop actually keeps. - Cost per cut (€) — Pro+. Each piece adds 1 cut (1D) or 2 cuts (2D) to the project total, multiplied by your blade-and-time cost. The new “Cuts” and “Cut cost” stat cards make the trade-off between a tighter layout and an extra blade pass visible.
All three settings travel with the project. The dedicated Kerf tolerance article walks through a 5-step measurement protocol and a workshop-tolerance reference table (CNC 0 mm → hand-fed bandsaw 2–3 mm).
Workshop-grade exports
- DXF + SVG export is now a stand-alone Pro feature on the landing page. The DXF target is R12, so it opens in AutoCAD LT, Inkscape, OnShape, Fusion, and every mainstream CNC post-processor without conversion.
- SVG files now include an
xmlnsdeclaration and an<?xml ... ?>prologue so the downloaded file opens correctly in Inkscape and any standalone SVG viewer. - CSV files prepend a UTF-8 BOM so Excel automatically detects the encoding — no more garbled diacritics.
- Filename pattern is unified across PDF / CSV / DXF / SVG:
<company-slug>-cutting-plan-<timestamp>.<ext>.
Saved offcuts go cross-device
Pro and Business users no longer lose their offcut inventory when they switch browsers. The “Saved offcuts” list now lives in the database (/api/offcuts-inventory), with a one-time silent migration from your existing localStorage on your next visit. Free users keep their browser-local storage as before.
Settings audit + 5 real bug fixes
We audited the entire /app Settings sidebar against the running optimizer code. Five settings looked like they did something but actually had no effect on the result:
- Stock prioritization (★ icon per row) now actually sorts the stock list before optimization.
- Min. offcut size advanced inputs (W / H / L) are now actually consulted by the inline optimizer.
- Cost minimization mode now sorts stock by
_priceascending — pick the cheapest sheet first. - Cut type and Unit (mm/cm) selects were phantoms — the code never read them. They have been removed. Cut type stays guillotine for now; nested layout is on the roadmap. Unit stays in millimetres; cm / inch is planned for v2.
Faster perceived UX with skeleton loading
We added a reusable Skeleton placeholder and wired it into five async paths so you no longer stare at empty space while data loads:
- The optimization run paints a stats-and-sheet skeleton before computing, so the layout shift is gone on big jobs.
- The PDF dropdown shows a busy state while jsPDF lazy-loads.
- The dashboard billing-history list, project-delete card, and Pro offcut inventory load all show structured placeholders during their network round-trip.
Login and accessibility polish
- Show / hide password toggle on Login + Register, with a Caps Lock warning.
- Inline per-field validation with
role="alert"for screen readers. - Public accessibility statement is now available in all 8 languages — see accessibility.
What’s next
Sprint 6 picks up Feature Pack 2 Phase 2 (P1): off-cut auto-include, assembly groups, and a richer Material Library. Sprint 7 brings the first Pillar A2 export (G-code).
Have a feature request or hit a bug? Reply to any CutOptim email or use the contact form.