Release planning

CadCraft 0.7 impact map

What is left from 0.6 and what comes next: every item that was not finished when 0.6 shipped moved here with its status, plus new requests. 0.6 itself keeps what was built.

ProjectCadCraft
Sheet0.7 impact
Items148
Date2026-10-21
6Fix
71Feature
2Spike
7Platform
5Site ops
18Sanity check
39Decision
≈ 21days in the planned and moved items
  • Planned 31 0.6 part 1 or part 2 list
  • Built 1 built and working in /lab (the dev builds); ships with 0.6
  • Partly built 19 part of it is built in /lab; the rest waits (see "Waits on")
  • Promised 2 the live site already says 0.6
  • Moved 1 moved from the 0.5 wishlist
  • Found 0 bug found after 0.5 shipped; 0.5.1 or 0.6
  • Candidate 47 recommended for 0.6 in a spike or session log; owner to choose
  • Community please test 14 built and in /use; a Discord post gives the steps and the expected result and asks people to try it on their own devices, files or know-how
  • Decision Time 33 a decision, check, file, key, flag or go only you can give; folds into the list once answered

Sheet 1 · impact areas

Where 0.7 lands

How many items touch each app and each layer, by kind. One item can touch several areas, so the rows add up to more than the item count. Pick a row to filter the schedule below.

Impact areaFixFeatureSpikePlatformSite opsSanity checkDecisionAll
Apps
CadCraft 4 37 1 – – 6 14 62
BimCraft – 24 – – – 5 10 39
ModelCraft – 14 1 – – 6 5 26
MarkupCraft – 7 – – – 2 1 10
TakeoffCraft – 5 – – – 3 3 11
CivilCraft – 8 – – – 2 3 13
DetailCraft – 5 – – – 2 2 9
PartCraft – 14 1 – – 8 8 31
Studio 2 12 – 7 1 7 8 37
SuperCadCraft – – – – – – – 0
Layers
Site and services – 9 – 3 2 – 21 35
Desktop host – 4 – 6 – 4 3 17
App shell – 3 – – – 1 1 5
App code – 28 – – – 2 9 39
Our engines – 5 1 – – 1 1 8
Vendor engines – 4 – – – – 2 6
Drawing surface – 5 – – – 1 – 6
Help and words – 4 1 – – 1 2 8
Tests and tooling – 2 1 – – – 3 6

Sheet 2 · schedule

Every fix and feature

Grouped by track. App chips carry each app’s layer colour; Studio is in ink. "Waits on" names what has to happen first; the small lines under it say who asked and where the item is written up.

Add an item Fork map (Rust and C++ forks) The roadmap

Issues sync every 10 minutes; last sync Oct 21, 2026 7:40 pm.

ItemWhatAppsLayersStatusDaysWaits onIssues
Fixes 4
Sanity checkDF.1e Link to DF.1e Won't open on Windows 11 ArtCraft’s

Our 0.4 installer on a clean Windows 11 VM, with and without WebView2. 0.4.1 bundles the runtime for the known case.

Studio Desktop host Planned in DF.1 Owner: Windows 11 VM run From: Discord community (Discord) 0.6-PART2 DF.1
Sanity checkM3D-DRIFT Link to M3D-DRIFT CadCraft’s 3D kernel copy has drifted from ModelCraft’s

cadcraft/dev/m3d/ differs from ModelCraft’s since 2026-10-15 (before the lc-model session). It was not re-copied because CadCraft never animates, so it does not need the new methods. Decide whether to re-copy on the next sync, and run the CadCraft 3D tests if so.

CadCraftModelCraft Planned – – From: session lc-model (Session) lc-model session report
Sanity checkTIMINGS-QUIET Link to TIMINGS-QUIET Re-run the nesting and stack-up timings on a quiet machine

The machine was busy when LC.17 and LC.18 were timed. Re-run both on a quiet machine before any speed is quoted in release notes.

CadCraftPartCraft Planned – – From: session lc-make (Session) lc-make session report
BIM interop 3
FeatureBIM-BUNDLE-OPEN Link to BIM-BUNDLE-OPEN Open a project bundle (.ccbundle.zip) in BimCraft and the other apps

The owner on Discord (2026-10-19): BimCraft opens a .ccbundle.zip in 0.7, and every CadCraft app can open one as well. Bundle format docs/spikes/archicad-bundle.md; reader bundle-open.js (BimCraft). Related: DF.12b Archicad bundle.

CadCraftBimCraft Planned – – From: Discord community (Discord) Discord, Oct 19, 2026
Platforms and stores 7
PlatformIPH.3 Link to IPH.3 Check on a real iPhone

Files from the Files app, sign-in, Live over Bonjour, the keyboard over the command line.

Studio Desktop host Planned owner Owner: a real iPhone From: owner (Owner) 0.6-PART2 IPH.3
PlatformMSIX Link to MSIX MSIX for the Microsoft Store

Proposed alongside Windows signing; not decided.

Studio Desktop host Planned – Owner decision From: owner (Owner) windows-signing note
Decision Time 42
DecisionDEC-11 Link to DEC-11 Free or paid outside add-ons

Free only (recommended), or paid with a revenue share: Stripe Connect, tax and payout terms. Moved out of Decision Time 2026-10-17: Free outside add-ons only, as recommended. Paid add-ons with a revenue share stay a separate candidate (PAID-AO).

– Site and services Planned – Default in place; change it here if you decide otherwise From: asked of the owner by: 0.5-PLAN decision 11 (Session) 0.5-PLAN decision 11
DecisionDEC-13c Link to DEC-13c Store listings as Studio only

Confirm the stores list Studio only (recommended). Moved out of Decision Time 2026-10-17: Store listings name Studio only, as recommended.

Studio Desktop host Planned – Default in place; change it here if you decide otherwise From: asked of the owner by: 0.5-PLAN decision 13 (Session) 0.5-PLAN decision 13
DecisionLIVE_PUBLIC Link to LIVE_PUBLIC Open Live invite links

Set LIVE_PUBLIC=1 and approve the pricing and Catalog copy that goes with it. Moved out of Decision Time 2026-10-17: Ships behind the switch LIVE_PUBLIC (0 now). Setting 1 opens Live invite links.

Studio Site and services Planned – Switch LIVE_PUBLIC=0; you turn it on, and approve the pricing and Catalog copy first From: asked of the owner by: live-relay, release-05 (Session) live-relay, release-05
DecisionSIGNIN Link to SIGNIN Safer app sign-in for everyone

Change APP_SIGNIN_CHECKS from lab to on, so the sign-in checks and alert mails reach everyone. Moved out of Decision Time 2026-10-17: Ships behind the switch APP_SIGNIN_CHECKS (lab now). Changing it to on sends the sign-in checks and alert mails to everyone.

Studio Site and services Planned – Switch APP_SIGNIN_CHECKS=lab; you turn it on From: asked of the owner by: live-relay, release-05 (Session) live-relay, release-05
DecisionPACKS Link to PACKS Install button for trade packs

Set TAKEOFF_PACKS_INSTALL=1 to show "Install in TakeoffCraft" on /addons. Moved out of Decision Time 2026-10-17: Ships behind the switch TAKEOFF_PACKS_INSTALL (unset = off). Setting 1 shows "Install in TakeoffCraft" on /addons.

TakeoffCraft Site and services Planned – Switch TAKEOFF_PACKS_INSTALL off; you turn it on From: asked of the owner by: 0.5-PART4 TK.6 (Session) 0.5-PART4 TK.6
Drafting and app features 14
FeatureMC-DIVIDE Link to MC-DIVIDE ModelCraft: divide a line or arc into equal parts

With an edge or arc selected, typing /n in the value box (the same /3 that spreads Move copies today) splits it into n equal edges, with a vertex at each division. An arc is divided along its curve, by equal angle, not along its chord. A curve made of many segments (a circle's or an arc's edges) is divided by length along the whole curve. Also a Divide… item on the right-click menu that asks for the number, so it works on a tablet with no keyboard. One undo step. Build it on model.js splitEdge. In the m3d kernel, so re-copy to the other apps (docs/3D-SPEC.md). Tests in bin/test-modelcraft.mjs: a line /3, an arc /4 (equal angles), a 24-segment circle /6, undo.

ModelCraft App code Planned 1 – From: Discord community (Discord) Discord, Oct 19, 2026
FeatureMC-CALC Link to MC-CALC ModelCraft: arithmetic in the value box (tape measure, Move, Push/pull)

ModelCraft was left out of DF.3 (0.6 typed arithmetic): its value box reads 2.5 but refuses 2.5/3, 4+7/16 and (2.5)/3. Give it its own copy of the DF.3 parser (cadcraft/dev/lencalc.js rules: + - * / and parentheses over lengths with units, no eval, a refusal that says where) and use it in units.js parseValue for every length, in the tape measure and every other tool. A leading /n, n x, *n and ns keep their meanings (divide copies, array, sides), so /3 is still the copy command and 2.5/3 is a length. Same in the other 3D apps that use the m3d value box. Add ModelCraft to tools/lencalc/sync.mjs. Tests: 2.5/3, 12'6"+3/4", (24'-0")/3, 2*450mm, and /3, 3x, 24s unchanged.

ModelCraft App code Planned 0.5 – From: Discord community (Discord) Discord, Oct 19, 2026
FeatureMCP-PATHS Link to MCP-PATHS CadCraft: file paths for assistants instead of file dialogs

OPEN, INSERT F, APPLOAD and COUNT export open a system file dialog, so an MCP call hangs until someone closes it and an assistant can't open a drawing on its own. Give these commands, plus SAVE, SAVEAS and PLOT, path arguments for the MCP server, confined to its roots. Moved from the 0.6.1 list (feature).

CadCraft Planned – – From: Discord community (Discord) Discord #cadcraft, Oct 19, 2026
FeatureMCP-ANSWERS Link to MCP-ANSWERS CadCraft: several answers in one MCP command_run

command_run presses Esc when the call returns, so a command that needs several answers can be cancelled by accident. Allow a list of answers in one call, or an option to keep the command open. Moved from the 0.6.1 list (feature).

CadCraft Planned – – From: Discord community (Discord) Discord #cadcraft, Oct 19, 2026
FeatureCAD-REGEN Link to CAD-REGEN CadCraft: REGEN and REGENALL commands

No REGEN command to refresh the view. Add REGEN / REGENALL (redraw the caches of this pane / every pane). Moved from the 0.6.1 list (feature).

CadCraft Planned – – From: Discord community (Discord) Discord #cadcraft, Oct 19, 2026
FeatureELEC-BUILDING Link to ELEC-BUILDING Electrical add-on: building installation symbols and RCDs

The Electrical add-on targets machine-control schematics (IEC 81346). Add symbols for building installations and residual-current devices (RCDs). Moved from the 0.6.1 list (feature). Discord CSV 2026-10-21: Asked again on Discord (2 mentions, #cadcraft Oct 18, 21): EPLAN / AutoCAD Electrical-style schematics. The Electrical add-on (IEC/NFPA symbols, cross-references, PLC I/O, terminal plans) already covers schematics; ArtCraft staff pointed one asker to ours.

CadCraft Planned – – From: Discord community (Discord) Discord #cadcraft, Oct 19, 2026
FeatureMCP-COUNT Link to MCP-COUNT CadCraft: a count-only objects_list

objects_list has no cheap count: a Discord member read the total with an offset past the end and limit=1. Add count_only (or limit=0 → count only) so drawing content stays out of the assistant's context.

CadCraft Planned – – From: Discord community (Discord) Discord #cadcraft, Oct 19, 2026
FeatureMCP-WINDOW-IDS Link to MCP-WINDOW-IDS Studio: window ids that survive a restart

The window id from windows_list is the window's label for this run, so it changes after every restart and an assistant's saved id stops working. Give windows a stable id (for example from the file), or let assistants pick a window by file.

CadCraftStudio Planned – – From: Discord community (Discord) Discord #cadcraft, Oct 19, 2026
FeatureMCP-HEADLESS Link to MCP-HEADLESS CadCraft: headless, path-based automation for assistants

a Discord member's wish list from another CAD tool: open, execute (insert with file, position and attributes; save as; plot; count; text) and convert IN OUT to dxf, dwg, svg, png or pdf, all headless, plus a batch CLI and a one-call drawing overview. Much of it exists in the headless MCP server and CLI (tools/mcp/server.mjs --root; drawing_open, drawing_save with a DWG version, drawing_convert, drawing_plot, drawing_describe; cadcraft convert), which is not published yet (@getcadcraft/mcp is the owner's). Missing: SVG and PNG output, insert with attributes as one call, and the same in the live in-app server (MCP-PATHS).

CadCraft Planned – – From: Discord community (Discord) Discord #cadcraft, Oct 19, 2026
FeaturePANEL-COMPACT Link to PANEL-COMPACT Compact panel layout: stacked, tabbed, dense panels and a property grid

Owner 2026-10-21 (screenshot of a compact docked layout): let panels and tool rows go compact like a classic engineering app. Several panels stacked in one dock (e.g. a tree above Properties), each with a slim title bar (menu, pin/auto-hide, close), tabs inside a panel group, a small icon toolbar per panel, dense rows, and a Properties grid with collapsible categories, label/value columns and inline sliders and checkboxes. A Compact density in Settings > General for every app; the default layout stays as it is. Built in the shell (app-panels.js) so SuperCadCraft SC.2 reuses it.

CadCraftBimCraftModelCraftMarkupCraftTakeoffCraftCivilCraftDetailCraftPartCraft Planned 6 – From: owner (Owner)
FeatureRIBBON-COMPACT Link to RIBBON-COMPACT A denser ribbon layout: big and small buttons, split buttons, inline property lists

Owner 2026-10-21 (screenshot of a drafting ribbon): a ribbon layout in the same spirit, our own design (not a copy). Today the Ribbon menu style draws every button big, one row per group. Add: per group a few large buttons plus the rest stacked three high as small icon + label buttons; split buttons (main action + a small arrow listing its variants, e.g. Line/Polyline, Linear/Aligned dimensions); inline controls where an app has them (CadCraft: current layer list with on/freeze/lock icons, colour / linetype / lineweight By layer lists); group names along the bottom with an arrow opening that group extra tools; works with Compact density (PANEL-COMPACT) and with the toolbar rows setting from CP.1. Data-driven in each app style file (item size, split, control), drawn by the shell app-input-ui.js. Trade dress: our icons, colours and spacing, no copied artwork.

CadCraftBimCraftModelCraftMarkupCraftTakeoffCraftCivilCraftDetailCraftPartCraft Planned 4 – From: owner (Owner)
BimCraft drawing (Discord, second batch) 2
FeatureBIM-MLWALL Link to BIM-MLWALL Walls that run through several levels

People on Discord can't find multi-level walls in BimCraft. Today a wall's top is either "Up to the level above" or a fixed height. A fixed height can be taller than one floor, but the upper levels' plans don't show the wall (each plan draws only its own level's walls, model-plan.js planCut skips other storeys), rooms up there don't close against it, and it doesn't follow level height changes. Build: (1) wall Top = any level above (Level 3, Roof…) + offset, in the wall panel and the Draw bar (CadCraft_Wall TopLevel already takes any level's GlobalId; wallHeight already measures to it); (2) every plan the wall passes through shows it cut, and rooms on those levels close against it; (3) doors and windows can be placed in the part of the wall on an upper level.

BimCraft App codeDrawing surface Planned – – From: Discord community (Discord) Owner, 2026-10-21: "people are saying they don't see multilevel walls on BimCraft"; "put it on 0.7"
From GitHub (to review) 1
FeatureBot obtainedGH.1 Link to GH.1 UI/UX: Top ribbon wraps into excessive vertical pile, lacks AutoCAD-style display modes and layer density control

### Problem Description On standard desktop and laptop resolutions (e.g. 1080p, 1440x900, 1366x768), the top ribbon toolbar (`.cc-tools`) wrapped all tool groups (`File`, `Draw`, `Modify`, `Annotate`, `Parametric`, `Blocks`, `Sheets`, `Edit`, `View`) into 3–5 stacked rows. - This consumed significant vertical space, drastically shrinking the active model drafting canvas. - There was no mechanism to cycle the ribbon to compact states (e.g., small symbols, labels-only, or hidden) familiar to users coming from AutoCAD (`Ctrl+F1`). - There was no user control over ribbon row/layer density (e.g., choosing 1 row, 2 rows, or fluid wrapping). --- ### Diagnosis & Root Cause 1. **Unconstrained Multi-Line Flex Wrapping**: In `app/cadcraft.css`, `.cc-tools` was declared with `flex-wrap: wrap` without horizontal overflow scrolling or height constraints. All 9 tool groups stacked vertically whenever the viewport was narrower than ~2500px. 2. **Absence of Display Mode States & Hotkeys**: No data attribute or state machine existed to toggle between AutoCAD-like ribbon display modes (`full`, `symbols`, `text`, `hidden`), nor a dedicated cycler button or `Ctrl+F1` keyboard shortcut. 3. **Absence of Row Configuration**: Users drafting on different monitor aspect ratios had no setting to lock the ribbon to a single row (preserving maximum canvas height) or 2 rows. 4. **Initial Implementation Regressions Identified**: - **Temporal Dead Zone (TDZ) ReferenceError**: In `app/cadcraft.js`, referencing `ribbonRowsState` within the `settingsDlg` initialization before its `let` declaration caused an uncaught `ReferenceError`. This aborted script execution prior to canvas pointer lis… Opened on GitHub by a Discord member: https://github.com/getcadcraft/cadcraft/issues/1 Discord CSV 2026-10-21: Asked again on Discord (Oct 17–20): icon + label toolbars, a Windows-style layout. Side docking: D7.02.

CadCraft Planned – PR #2 needs a rebase From: a Discord member (GitHub) GitHub getcadcraft/cadcraft#1, Oct 20, 2026 cadcraft#1 open
Discord, 0.7 batch (Oct 17–21) 31
FixD7.16 Link to D7.16 CadCraft: non-Latin text in DXF, \M+ escapes and CJK in PDF plots ArtCraft’s

Asked: Korean, Vietnamese and Russian text and tab titles garbled (2 mentions, #cadcraft Oct 19). Checked 2026-10-21: DWG is fine (code pages 1251, 1258, 949, 932, 936, 950 and \U+ escapes decode). Three gaps in ours: (a) DXF ignores $DWGCODEPAGE — it is decoded as UTF-8, falling back to windows-1252 (cadcraft.js file open), so a Russian or Korean R2000 DXF shows garbage; (b) \M+ multibyte escapes (older Asian text) are not decoded anywhere; (c) PDF plots embed Liberation Sans, so CJK prints as “?” (pdf-font.js). Screen and tab titles are fine. Fixtures in fixtures/dwg/ per code page.

CadCraft Planned 1 – Discord CSV pasted by the owner 2026-10-21
FixD7.18 Link to D7.18 CadCraft: layouts that open empty or lose a viewport ArtCraft’s

Asked: layouts show random artifacts; some files show empty layouts (#cadcraft Oct 17). Checked 2026-10-21: two risky assumptions in ours (dwg-import.js layouts): a layout with no block link is dropped entirely, and the first VIEWPORT found is taken to be the sheet's own and removed — if a real viewport comes first, it disappears. Paper size falls back LIMITS → first viewport → A4/Letter. Do: find the overall viewport by its id (the one with status/ID 1), keep link-less layouts with a warning in the import report, fixtures for both, and ask Discord for a file that opens empty (DISCORD-ASK).

CadCraft Planned 1 – Discord CSV pasted by the owner 2026-10-21
FeatureD7.24 Link to D7.24 PDF underlay (PDFATTACH) and PDF import into CadCraft ArtCraft’s

Asked: attach a PDF like AutoCAD, and insert a PDF into a model (2 mentions, #cadcraft Oct 17, 21). Checked 2026-10-21: ours has no PDFATTACH/PDFIMPORT; the open dialog takes .dwg/.dxf only. MarkupCraft already renders PDFs (pdf.js) and reads vector content. Do: PDFATTACH (page, scale, clip, fade, snap to its vectors), saved as a PDF underlay in DWG/DXF; PDFIMPORT turns a page's vectors and text into lines, arcs and text. Owner 2026-10-21: planned for 0.7 (session cad-bugs). Uses the vendored pdf.js (Apache-2.0) as MarkupCraft does; underlay saved as PDFDEFINITION / PDFREFERENCE in DWG (cc-dwg, from the ODA spec) and DXF.

CadCraftMarkupCraft Planned 4 – Discord CSV pasted by the owner 2026-10-21
Sanity checkD7.51 Link to D7.51 PartCraft: stress test at 750 features

Asked: the Parameters window drops to a low frame rate at about 740 features (#SolidCraft Oct 18; reported about Tangency Labs' app). Checked 2026-10-21: we have no large-model test (only 30 rebuilds of small parts). Do: a generated 750-feature part in testfiles/generated/ (LARGE-FILES.md), time rebuild, Parameters window and feature tree scrolling; fix what's slow (virtualised lists, incremental rebuild).

PartCraft Planned 0.5 – Discord CSV pasted by the owner 2026-10-21
FixD7.54 Link to D7.54 Studio updater: no nagging, every platform in the feed, clear errors ArtCraft’s

Asked: the updater fails when a release has no asset for this platform; it still nags with updates off; show Open instead of Update (5 mentions about ArtCraft's launcher and SolidCraft, #SolidCraft Oct 17, #technical-development Oct 18, #craft-apps Oct 21). Checked 2026-10-21 — real in ours: (a) the hub sets updateReady whenever the build has a feed, not when a newer version exists, so the dismissed What's new card returns at every start, even with updates off (hub.js); (b) the feed has only windows-x86_64 (build.mjs), so any other platform with a feed gets “target not found”, reported as “network:” (updates.rs); (c) the hub reads r.message from a plain-string result, so every check shows the generic text. Fix all three before UPDATES turns on.

Studio Planned 1 – Discord CSV pasted by the owner 2026-10-21
FixD7.56 Link to D7.56 CadCraft 2D: two-finger trackpad swipe pans instead of zooming ArtCraft’s

Asked: jagged touchpad scrolling (#craft-apps Oct 18; about ArtCraft's egui apps). Checked 2026-10-21: egui doesn't apply to ours, but CadCraft's 2D wheel handler always zooms and ignores deltaX (cadcraft.js), so a trackpad swipe zooms and sideways swipes do nothing. The 3D view already does it right (ws3d.js: swipe orbits, pinch zooms). Do: the same trackpad detection in 2D — swipe pans, pinch (ctrlKey) zooms, a mouse wheel still zooms — in every app's 2D canvas (own copies).

CadCraft Planned 0.5 – Discord CSV pasted by the owner 2026-10-21
FixD7.57 Link to D7.57 Studio on Linux: guard against the WebKitGTK black window ArtCraft’s

Asked: black screen on start on Linux after an update (2 mentions, #cadcraft Oct 18, 21; about ArtCraft's app). Checked 2026-10-21: ours has no guard for the known WebKitGTK blank window (NVIDIA, Wayland); nothing sets WEBKIT_DISABLE_DMABUF_RENDERER. Also: the .deb/AppImage are named on the site but neither build.mjs nor a CI workflow builds them — find or add the Linux build. Do: set the variable before Tauri starts when it isn't set, a Linux CI job, and a clean-VM check (WIN-CLEAN-style community test).

Studio Planned 0.5 – Discord CSV pasted by the owner 2026-10-21
Suggest an item

Anyone can send one; no account and no name needed. The team reads each idea, and the ones we take on appear on this page. Please leave out web addresses.