Release planning

CadCraft 0.9 impact map

Every fix and feature lined up for 0.9, and what each one touches: which apps, and which layers of the stack.

ProjectCadCraft
Sheet0.9 impact
Items273
Date2026-11-09
115Fix
147Feature
4Spike
0Platform
0Site ops
0Sanity check
7Decision
≈ 0days in the written 0.9 plans
  • Planned 0 on the plan for the release it is filed under
  • Built 271 built and working in /lab (the dev builds). Whether the public has it is its reach: "in the lab", "Live" (the last gate) or "switched off"; see docs/REACH-LIVE.md
  • Partly built 1 part of it is built in /lab; the rest waits (see "Waits on")
  • Promised 0 the live site already says it is coming
  • Moved 0 moved here from an earlier release or wishlist
  • Found 0 bug found after a release shipped; fixed in a point release or the next one
  • Candidate 0 recommended in a spike or session log; owner to choose
  • Community please test 0 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 0 a decision, check, file, key, flag or go only you can give; folds into the list once answered

Built means built and working in the lab. Live means the public can use it, and is the last gate: 270 Built · Live, 1 Built · in the lab.

Sheet 1 · impact areas

Where 0.9 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 38 36 – – – – 2 76
BimCraft 27 53 2 – – – – 82
ModelCraft 19 45 2 – – – 2 68
MarkupCraft 16 11 – – – – – 27
TakeoffCraft 18 7 – – – – – 25
CivilCraft 14 32 – – – – – 46
DetailCraft 13 13 – – – – – 26
PartCraft 18 27 1 – – – – 46
Studio 2 5 1 – – – – 8
SuperCad Studio 22 17 – – – – – 39
Layers
Site and services 7 11 – – – – 5 23
Desktop host 1 1 1 – – – – 3
App shell 2 1 – – – – – 3
App code 10 28 3 – – – 3 44
Our engines – 12 1 – – – 1 14
Vendor engines – – – – – – – 0
Drawing surface – – – – – – – 0
Help and words 1 2 – – – – 1 4
Tests and tooling – – – – – – – 0

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 Nov 9, 2026 7:00 pm.

ItemWhatAppsLayersStatusDaysWaits onIssues
Decision Time 5
DecisionAO.8 Link to AO.8Comment on AO.8 Send the add-on posts

Approve and send the drafted "Build an add-on" and Apparel news and Discord posts.

CadCraft Site and services Built · Live – You: publish From: asked of the owner by: addons-posts-draft (Session) addons-posts-draft
DecisionLIB-PUBLIC Link to LIB-PUBLICComment on LIB-PUBLIC Make Library public

Set LIBRARY_PUBLIC=1 after the library decisions below; residential, entourage and standard-part items wait on it.

– Site and services Built · Live – You: flag From: asked of the owner by: TASKS, render, bim-residential (Session) TASKS, render, bim-residential
DecisionMEP-REL Link to MEP-RELComment on MEP-REL Release the HVAC and piping add-ons

List them on /addons; a mechanical or plumbing professional reviews the labelled defaults.

CadCraft App codeSite and services Built · Live – Review is community test MEP-REL-HAND (not blocking) From: asked of the owner by: cad-mep (Session) cad-mep
DecisionEG.24 Link to EG.24Comment on EG.24 Students and classrooms: free student mode and classroom licences?

Should students get a free mode, and schools classroom licences (pricing, how a school is verified, what a student file may be used for)? Owner's review list 2026-10-27 (duplicates removed). Plan docs/0.8-PART5.md.

– Site and services Built · Live – owner From: owner (Owner) Owner, 2026-10-27 (engineering gaps list, add to 0.8)
Regional standards 1
FeatureZA.1 Link to ZA.1Comment on ZA.1 South African market: SANS 10143 drawing practice + SANS 10400 building regulations

Sell into South Africa: local practice draws to SANS 10143 (building drawing practice) and builds to SANS 10400 (National Building Regulations). Full note for the 2026-10-26 meeting: docs/0.8-ZA-STANDARDS.md. Today: no SA support. BimCraft residential is hard-coded to US codes (res-stair.js IRC stair limits, res-framing.js 2x lumber + US header table, US egress window, US electrical symbols). Suggested order: 1. Built on REG.1: regulations by jurisdiction as library packs; ZA.1 delivers the South African country packs. 2. SANS 10143 drawing pack: metric mm dims, levels in m, A-series sheets, SA title block (erf, SACAP reg. no.), hatches, symbols, D1/W1 marks. 3. SA residential defaults: 230/280 cavity masonry, SA brick and block, 38x114/38x152 timber, trusses, IBR/tile roofs; Part M stair and Part O window-area checks. 4. Part XA energy check (climate zones 1-6, fenestration, R-values) and an SA municipal submission set export. The differentiator. 5. CivilCraft: Hartebeesthoek94 Lo zones with the Y-westing / X-southing axis flip; SANS 10142 electrical symbols. Business: SANS texts are copyrighted (buy, encode, cite clauses, edition dates); POPIA; ZAR + 15% VAT, regional pricing?; offline/load-shedding is a selling point. Meeting questions: 0.8 market or later? Buy the SANS set? An SA reviewer? Regional pricing? Drawing pack or XA first? Afrikaans? All SANS figures are from memory; check against purchased copies before shipping. LAB SAMPLE (2026-10-25): a small South African pack (stairs, room height, window and openable area) can be seen in /lab/bimcraft under Settings > Building regulations. Its numbers are unchecked.

CadCraftBimCraftCivilCraftDetailCraft App codeSite and servicesHelp and words Built · Live – – From: Owner docs/0.8-ZA-STANDARDS.md Read the doc
Platforms and stores 2
FeatureRL.1 Link to RL.1Comment on RL.1 /download: "Where we release" with current and planned release streams

A tabbed section on /download (#release-streams): Current release streams (this page, the browser at /use, updates inside Studio, GitHub releases) built from Downloads, so a channel shows only with real files; Upcoming and planned streams (Microsoft Store, winget, the signed Windows package, npm/npx, Apple App Store, Homebrew, Google Play, Flathub), no dates. Source: Catalog::releaseStreams() + RELEASE_STREAMS_PLANNED; component core/components/release-streams.inc. TestFlight is not a release stream (owner). Tests: bin/test-product.php.

Studio Site and services Built · Live – – From: owner (Owner) owner 2026-11-01
FixRL.2 Link to RL.2Comment on RL.2 /download notices brought up to date for 0.8

The Windows notice and the requirements table no longer say automatic updates are off: the Windows installer, .deb and AppImage check for updates (from the release's updates.json). The WebView2 notice says fixes arrive with each Studio version. The Spanish and Indonesian notices became one: every app offers the machine-made draft languages (count read from the CadCraft build), getting-started help only. Mac and Android still say updates are off (not in the feed).

Studio Site and services Built · Live – – From: owner (Owner) owner 2026-11-01
Fixes 104
FixFX.4 Link to FX.4Comment on FX.4 /studio facts list no longer says "Live: Local code (invite links not open yet)"

The Studio page's facts list had a Live row reading "Local code (invite links not open yet)" while invite links are off. The row now shows only when invite links are open (LIVE_PUBLIC), as "Local code, or invite link". The Live section lower on the page and the FAQ still say invite links are not open yet; bin/test-product.php updated, not re-run.

– Site and services Built · Live – – Owner, 2026-11-03
FixFX.5 Link to FX.5Comment on FX.5 Privacy notice: "Placeholder document" box removed

/legal/privacy no longer carries the dashed Placeholder document box saying it was not reviewed by the owner or a lawyer. The terms page still has its own. test-resources.php updated and passing (274). The wording itself has not had a legal review.

– Site and services Built · Live – – Owner, 2026-11-03
FixFX.6 Link to FX.6Comment on FX.6 Tutorials: each app's What's new said 0.7; now 0.8 and 0.8.1

The eight apps' What's new help topics still described 0.7, including in the frozen 0.8.1 builds. New "What's new in 0.8 and 0.8.1" topics written from the release notes (a Discord member help, compiled); the 0.7 text stays as whats-new-0-7. The site shows the a Discord member copy of the release-note topics only when its title names the shown build (Help::withReleaseNotes); the 0.8.1 builds' in-app help still has the 0.7 text. Translations of the topic are stale. The eight pages were written by background agents; only TakeoffCraft's was read through by hand.

– Help and wordsSite and services Built · Live – – Owner, 2026-11-03
FeatureFX.7 Link to FX.7Comment on FX.7 Tutorials: search bar on /tutorials, each app's help and the basics

A server-side search (no JavaScript) over the compiled help: every word must match, title and keyword hits rank first, highlighted snippets, result pages noindex (Help::search, help-search.inc). Not added to single topic pages. Checked over HTTP on live pages; no automated test written.

– Site and servicesHelp and words Built · Live – – Owner, 2026-11-03
FixFX.8 Link to FX.8Comment on FX.8 Studio Live invite links opened to everyone (LIVE_PUBLIC on)

The invite link (Studio Live from anywhere, through the relay at wss://getcadcraft.com/live/relay) was built and tested since 0.5 but held behind .env LIVE_PUBLIC=0, so /studio, the pricing/FAQ copy and the apps' help said "not open yet". Owner said do it now: LIVE_PUBLIC=1. The site copy follows the switch by itself (/studio Live row, Invite link card, FAQ). a Discord member help for the eight apps (work-live) and MarkupCraft's not-built-yet list updated and compiled. Rules unchanged: the host needs a Team Cloud Plan seat, guests join free, 5 open rooms per host. Checked: relay test 26/26, paid-live gate 10/10, live-rooms 98 of 99 (the one failure, 'no Join in the browser while no public build takes live sessions', was failing before the switch and looks stale because 0.8.1 builds accept live). NOT checked: an invite link run end to end between two real Studios on different networks; the frozen 0.8.1 in-app help and Tutorials pages still say invite links are not open yet until the next release.

– Site and servicesDesktop host Built · Live – – Owner, 2026-11-03
FixFX.14 Link to FX.14Comment on FX.14 Student Program: applications stay out of the inbox; every program email shows its Brevo status

When the verify step was added, StudentProgram::apply still created a normal Contact message, so each application landed in /admin/messages, mailed staff and sent an acknowledgement next to the verify email. Now the form's words are kept as an archived message (Contact::submit ctx quiet), with no staff note and no acknowledgement. /admin/students has a Last email column and a notice for verify emails that did not get through; /admin/student has an Emails section (status, opened, clicked, the refusal reason), from email_log. The resend message says the email was handed to Brevo, not that it was sent. Found through a school (itcgalilei.edu.it) whose mail server refuses our mail with 550 5.7.1; that applicant cannot verify at that address. Tested with bin/test-student-program.php (91 pass) and by rendering the pages on real rows; no new application has gone through the live form since.

– Site and services Built · Live – – Owner, 2026-11-03
FixFX.44 Link to FX.44Comment on FX.44 Student Program: tell applicants what to do when the verify email never arrives

Some school mail servers refuse outside mail (seen: itcgalilei.edu.it, 550 5.7.1), so an applicant at such a school waits for a link that never comes and we cannot email them to explain. The notice after applying and a new "No email from us?" item beside the form on /education now say to check spam, then apply again with another address. Since FX.24 another address gets the license on the click, with no approval. The staff alert discussed with this fix was not built: no application waits for approval any more. Tested with bin/test-student-program.php and the live page; no one has yet applied after seeing the new words.

– Site and services Built · Live – – Owner, 2026-11-05
Developer API 8
FeatureAPI.1 Link to API.1Comment on API.1 Developer API: keys for licensed accounts, api.getcadcraft.com/v1, categories

The CadCraft API for people's own systems, on its own host. Licensed accounts make keys on /account/developers: scopes per category, one-workspace limit, expiry, allowed addresses, roll and revoke; the key is shown once. Categories: account, licenses, education, library, storage, projects, meta. Rate limits per key, Idempotency-Key on writes, cursor paging, and a log of each key's calls. Thin wrappers over the same services the website uses, so a key can never do more than its account. Test bin/test-a Discord member-api.php --http.

– Site and services Built · Live – – From: owner (Owner) Owner, 2026-11-03: "the cadcraft api"
FeatureAPI.2 Link to API.2Comment on API.2 Developer area: /developers overview, guides, generated reference, console, changelog

Public docs at /developers, in the footer, sitemap and llms.txt. The reference is generated from the one endpoint catalogue the server routes by, with curl, PHP, Python and Node samples. The console makes real calls with your own key, run on our server so the browser never calls the API; a live key needs a tick before it changes anything.

– Site and services Built · Live – – From: owner (Owner) Owner, 2026-11-03: "the cadcraft api"
FeatureAPI.3 Link to API.3Comment on API.3 API: seats and license counts (Team Cloud Plan + SuperCad Studio)

License counts per workspace; list Team Cloud Plan seats; assign, unassign, or give a seat to an email address (invited with the seat held). SuperCad Studio: list seats and move one under the website's waiting-time rule. Buying or removing seats stays on the website.

– Site and services Built · Live – – From: owner (Owner) Owner, 2026-11-03: "the cadcraft api"
FeatureAPI.4 Link to API.4Comment on API.4 API: cloud storage use and project lists

A workspace's space and use plus the account's own folder; projects, one project with members, and its drawings (names, apps, versions and sizes, never the files).

– Site and services Built · Live – – From: owner (Owner) Owner, 2026-11-03: "the cadcraft api"
FeatureAPI.5 Link to API.5Comment on API.5 Teachers enroll a class: invite, active on the click (API + /account/students)

An active teacher in the Student Program enrolls a list, on /account/students or POST /v1/education/students (the same service): up to 200 a call, 500 invites a day, 300 students unless staff raise it. Each student gets one email; /education-join needs a real click, then the license is active with no staff review, prices locked as at apply. Invites expire after 30 days. List, edit, resend, CSV; a student can say "This isn't for me" and is not invited again. Taking a student off the list: an unanswered invite ends; someone who joined keeps the versions covered until then and new versions stop, and they can answer a new check if they are still a student. Real mail to a student has not been sent yet (tests only log it).

– Site and services Built · Live – – From: owner (Owner) Owner, 2026-11-03: "the cadcraft api"
FeatureAPI.6 Link to API.6Comment on API.6 API: upload library blocks, choose what to add, see where they stand

POST /v1/library/uploads takes a DWG, DXF or library .json (50 MB, 20 an hour, as on the website) and answers with the blocks found; commit the ones to add with a category, license, source and the rights confirmation, or abandon. Public items wait in the same staff review as website uploads; team library items need a seat in force. Also lists the account's items with their versions and review state. Tested over HTTPS with the DXF fixture; a real DWG has not been sent through the API.

– Site and services Built · Live – – From: owner (Owner) Owner, 2026-11-03: "the cadcraft api"
FeatureAPI.7 Link to API.7Comment on API.7 API: a sandbox of your own for cck_test_ keys

Sandbox keys run every call against a practice team, class, SuperCad Studio license and projects in a second database: real writes, but no mail is sent, nothing is charged and uploads never reach the real Library. Each developer's sandbox is apart from everyone else's. Helpers read its mail, play a student or the reviewer, and start over; page /account/developers/sandbox.

– Site and services Built · Live – – From: owner (Owner) Owner, 2026-11-05: "yes v1, build the sandbox next then webhooks"
FeatureAPI.8 Link to API.8Comment on API.8 API: webhooks, so we call your server when something happens

Add an endpoint on /account/developers or with POST /v1/webhooks and hear students join, seats move, SuperCad Studio seats change and library reviews finish. Signed, retried for about 2.7 days, paused with one email when an endpoint keeps failing. Sandbox endpoints hear the sandbox, so you can build against it first. Private addresses and our own server are refused.

– Site and services Built · Live – – From: owner (Owner) Owner, 2026-11-05: "yes v1, build the sandbox next then webhooks"
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.