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
Requests for 0.8 5
FeatureD8.12 Link to D8.12Comment on D8.12 BimCraft: a working style in Settings — how duplicated views, printing and element classes behave

Discord (a Discord member, Oct 28; owner 2026-10-30: "feels like a LAYOUT in settings"): people coming from the two big BIM programs expect different behaviour, and neither is wrong. Settings › BimCraft › Working style picks a preset that sets the defaults of D8.12-A…D, each still changeable on its own, like the workspace layouts (Track WS): - Each view its own (default): a duplicated view copies its annotations and they stay that view's; sheets print as the screen shows. - Shared annotations and pen tables: duplicates share annotations; printing goes through a pen table. Names describe the way of working, never a product (trademark rule). Checked in /lab 2026-10-30 — already there: families and the family editor (BIM-FAM-MORE, partly built), docked ribbon and toolbox + info box layouts (Track WS), drafting shown only in its own view (DC.117 d), view templates (DF.19), per-view pen overrides (SU.1055, partly). Missing: D8.12-A duplicate a view, D8.12-B print as shown, D8.12-C use an element as another class, D8.12-D project templates. Also from the thread: a Discord member pointed at the vendor's public ideas forum (most-voted) as a list of what users miss; a Discord member offered to work through our project files as an experienced user — the owner/a Discord member to send files. **Implementation started 2026-11-02** (0.9 top-5 pick #2, hardest first; session `bim-views-09`, log docs/0.9-sessions/bim-views-09.md). Status moves to Partly built or Built only when the code is reachable and tested (rule 49).

BimCraft App code Built · Live – – From: Discord community (Discord) Discord 2026-10-28
FeatureD8.12-A Link to D8.12-AComment on D8.12-A BimCraft: duplicate a view, as its own copy or linked

Today a plan is one view per level plus callouts; there is no Duplicate. Add Duplicate on plans, ceiling plans, sections, elevations and callouts with a choice: Own copy (drafting, dimensions, crop, hidden elements and pen overrides copied; editing or deleting them changes only that view — the default) or Linked (one set shared by both views). The working style (D8.12) sets which one is offered first. Older views on issued sheets must never change because a later copy was edited (the requester's point: revisions are not a straight line). Stored in the IFC as now (CadCraft_PlanView / CadCraft_Drafting View key). Part of D8.12. **Implementation started 2026-11-02** (0.9 top-5 pick #2, hardest first; session `bim-views-09`, log docs/0.9-sessions/bim-views-09.md). Status moves to Partly built or Built only when the code is reachable and tested (rule 49).

BimCraft App code Built · Live – – From: Discord community (Discord) Discord 2026-10-28
FeatureD8.12-B Link to D8.12-BComment on D8.12-B BimCraft: print as shown — pen overrides saved in the file and on sheets and PDF

Pen overrides (SU.1055, pens.js) live in the browser only (localStorage bimcraft.pens), cover walls, doors and windows, and are not on the printed plan yet. Do: keep them in the IFC with the view, cover every category (and drafting), and draw sheets and the PDF exactly as the screen shows (default). The other working style prints through a pen table (colour → weight and ink), reusing CadCraft's plot-style work (DC.14) rather than a second format. Closes SU.1055's pen-override rest. Part of D8.12. **Implementation started 2026-11-02** (0.9 top-5 pick #2, hardest first; session `bim-views-09`, log docs/0.9-sessions/bim-views-09.md). Status moves to Partly built or Built only when the code is reachable and tested (rule 49).

BimCraft App code Built · Live – – From: Discord community (Discord) Discord 2026-10-28
FeatureD8.12-C Link to D8.12-CComment on D8.12-C BimCraft: use an element as something else — a wall as a panel, a slab as a road or shelf, a roof as a ramp

Keep the drawing tool's geometry and editing but report the element as another IFC class (and predefined type), so schedules, takeoff, Problems and the IFC export count a slab drawn as a road as a road, not a floor. A "Report as" field in Properties (search of IFC classes that fit the shape), one undo step, round-trips through IFC2X3 and IFC4; schedules group by the reported class. The requester's point: the other program files these as generic models and its schedules stay wrong. Part of D8.12. **Implementation started 2026-11-02** (0.9 top-5 pick #2, hardest first; session `bim-views-09`, log docs/0.9-sessions/bim-views-09.md). Status moves to Partly built or Built only when the code is reachable and tested (rule 49).

BimCraft App code Built · Live – – From: Discord community (Discord) Discord 2026-10-28
Fixes 104
FixFX.49 Link to FX.49Comment on FX.49 BimCraft: Add levels takes heights below the lowest level

Asked on Discord by a Discord member: is there a way to create a level below the lowest level made so far? The Levels panel already had Add a level below (DC.119). The Add levels dialog (At these heights) still refused anything under 0; it now takes negative heights (for example -10'-0", -20'-0"): the new level reaches up to the next level above it and is named Level -1 (nearest the ground), Level -2, and so on. One undo step. Test: draw06 'Add levels at -6000 and -3000' (225/0). Not tested: a real project with walls or a slab at the lowest level (the levels are added, nothing else moves), a desktop build.

BimCraft Built · Live 1 – From: Discord community (Discord) Discord, a Discord member, 2026-11-04
FixFX.22 Link to FX.22Comment on FX.22 BimCraft: dragging a wall no longer skews the room, and Square up brings 90 degrees back

Discord report with screenshots: dragging a wall's centre grip slightly off square tilted both joined walls, and nothing brought the room back to 90 degrees. The grip moved the wall by the whole drag and carried the joined corners with it; Length did the same. Changed in the lab build. The centre grip moves the wall square to itself; its corners slide along the joined walls, so they keep their angle at any angle, and partitions butting into it come along. Ctrl (Cmd) gives the old free move. An end grip catches square to the wall joined at its other end within 3 degrees (Shift stays on the plan's axes, as before). Properties for a straight wall adds: Measure from (centre line, inside face, outside face), which Length and the new Room size read and set from; Move square (typed, + out, - in); Angle to joined wall (or Direction for a wall on its own); and Square up, which turns the connected walls within 10 degrees of a right angle to their main direction. A distance can be typed while a grip is held (Enter or letting go uses it, Esc drops the move). Each change is one undo step. Geometry in wall-square.js. Tested: tools/bimcraft-test/wall-square-test.mjs 56, browser-wallsquare.mjs 28 (the report's steps), browser-model, browser-comforts and --model pass. Not tested: a real project with many walls, doors in a wall whose corners slide at a non-right angle, or a desktop build.

BimCraft Built · Live – –
FixFX.55 Link to FX.55Comment on FX.55 BimCraft: typing LEVEL does nothing and the ribbon has no Levels button; optional side-panel accordion with a lock (setting, default off)

a Discord member, 2026-11-05 (working in /lab with the drafting ribbon): the help describes the Levels panel, but typing LEVEL on the command line said Unknown command and no ribbon button led to it. Built (/lab, a Discord member): the command line takes LEVEL, LEVELS, STOREY, STOREYS (opens Add levels…); a Levels button sits in the Home > Levels group (Drafting ribbon), the Architecture > Model group (Ribbon) and the Home menu (model.levels in input-bimcraft.js). The left/right panel's collapsible sections (Find, Quantity totals, Checks, Clash …) close each other so the one you opened has the focus when Settings > BimCraft > Side panels is on (default OFF, owner's call 2026-11-05); a lock beside each caret keeps one open, remembered on this device (panel-focus.js). Test: tools/bimcraft-test/browser-levels09.mjs, 15/0. Not in the Docked/Duncan layouts' own tool sets (the docked ribbon already had Level). New strings are English only until the next language sync.

BimCraft App code Built · Live 1 – From: Discord community (Discord) Discord, a Discord member, 2026-11-05
FixFX.140 Link to FX.140Comment on FX.140 Resin slicing: faster on big screens and dense miniature meshes, and less memory

A tester reported the resin slicer crashed while slicing; they later said the model was a dense mesh from a miniatures set, a few MB, not regular geometry. The cause is not confirmed and no crash was reproduced, but tests found three real problems. (1) Drawing: the page spent most of its time turning each layer into a 12K picture (59 million pixels a layer); a 100 mm part at 0.05 mm took over 280 s. Now only the rows a layer lights are touched, one buffer is reused, and dark rows are written as single runs: a 60 mm part 151 s to 27 s, the 100 mm one over 280 s to 100 s. (2) Dense meshes: the island check ran an exact overlap test for every small piece of every layer (40 of 52 s on a 40,000-triangle noisy ball with supports); the overlap of the whole layers is now found once and cut into pieces, same island counts as before (251 = 251 on a test mesh), 52 s to 22 s. The cavity of a hollow part is worked out on an outline simplified by half a pixel (about 25 percent faster, wall within half a pixel). (3) Memory: a 40-piece, 139,000-triangle mesh at 0.03 mm, hollow with supports, peaked at 1.98 GB (enough to kill a browser tab), because every layer's pieces were kept to the end; temporary shapes are now given back at once: 1.20 GB, and it finishes in about 4.5 minutes where it ran past 7. Layers are identical to before the change except the half-pixel cavity. With RSN.8 the slicing also runs on a worker thread, so the page cannot freeze. Not tried on a real printer or on the tester's own file.

BimCraftModelCraftPartCraft App code Built · Live – The tester to try again in /lab and say what happens (printer, layer height, hollow/supports, model size). From: Discord community (Discord) Discord 2026-11-08: "it crashed while slicing"
Requests for 0.9 8
FeatureD9.1 Link to D9.1Comment on D9.1 BimCraft: change several columns at once (height, top, size)

Ask: "select multiple columns and edit their height in one go; the height options only show when one column is selected." Several columns picked together already shared Shape, Size, Top and Height, but a pick that also caught a wall or another element (columns stand in walls on grid lines; a box catches both) showed only "N elements picked" with no fields. Built: a pick of several kinds lists each kind with "Keep only these", one click keeps the columns and their shared fields show. Fields where the columns differ are empty ("Mixed"), never the first column's value; Height typed once makes every picked column that tall (a column following the level above gets the offset that makes it so); Top keeps each column's own level above. Files: bimcraft.js showMany, model-grids-ui.js props. Tests: browser-draw06 --only d9.

BimCraft App code Built · Live – Built in /lab 2026-11-03; the requester tests it on a lab pass. From: Discord community (Discord) Discord 2026-11-03 (owner: build it in the lab now)
FeatureD9.2 Link to D9.2Comment on D9.2 BimCraft: grid dimensions on the plan

Ask: "a way to show the grid dimensions". Built: Build › Grid has a Dimensions box: the spacing between neighbouring grid lines and the overall size, for the numbered and the lettered lines, drawn past the bubbles on every level's plan and the sheets made from it. Saved in the IFC (CadCraft_Grid Dims), one undo step, follows the grid when lines move, are renamed or added; a turned grid measures across its lines. Files: model-grids.js gridDims, model-grids-ui.js. Tests: test-bimcraft --draw06 (D9.2), browser-draw06 --only d9.

BimCraft App code Built · Live – Built in /lab 2026-11-03; the requester tests it on a lab pass. From: Discord community (Discord) Discord 2026-11-03 (owner: build it in the lab now)
FeatureD9.3 Link to D9.3Comment on D9.3 BimCraft: Measure on the plan (temporary dimensions)

Ask: "a measure tool to add temporary dimensions in the Plan view / 3D view". The 3D view already had Measure (M: distance, faces, areas). Built: Draw › Measure on the plan: click two points for a dimension with the distance and ΔX / ΔY; points snap to wall ends, grid lines and crossings, columns; Shift keeps a leg straight; more clicks chain on with a running total; Esc clears it. Nothing is written to the model. With only the plan shown, M opens it (with the 3D view on screen M stays the 3D Measure). Files: model-measure-ui.js (new), model-ui.js planOnly/useTool, bimcraft.js key M, ui.inc. Tests: browser-draw06 --only d9.

BimCraft App code Built · Live – Built in /lab 2026-11-03; the requester tests it on a lab pass. From: Discord community (Discord) Discord 2026-11-03 (owner: build it in the lab now)
Interior lighting design add-on (IL) 5
FeatureIL.4 Link to IL.4Comment on IL.4 Lighting design glare (UGR) estimate

CIE 117 formula with Einhorn position index, four observers at 1.2 m, initial flux. An estimate from the file, not the maker table. Not checked against a published UGR table yet.

CadCraftBimCraft Built · Live – – From: Discord community (Discord) docs/0.9-sessions/lightdesign-09.md
FeatureIL.6 Link to IL.6Comment on IL.6 Lighting design report: printable page with map, results, checks

HTML page (print to PDF), SVG illuminance map with scale, summary, checks, the notes on what the numbers are. Not in the Studio report binder yet.

CadCraftBimCraft Built · Live – – From: Discord community (Discord) docs/0.9-sessions/lightdesign-09.md
FeatureIL.9 Link to IL.9Comment on IL.9 Lighting design in BimCraft: IfcLightFixture placement and lux on the model

Place real IFC light fixtures, schedule them, and show the calculated lux on the model rooms. adapters-09 2026-11-06: In BimCraft the add-on reads the model's rooms with their windows and the walls' height, places the luminaires as IfcLightFixture (BimCraft's own ceiling luminaire with plan symbol, tag and watts as Load, plus CadCraft_LightDesign with lumens, watts and the room's mean lux) in the room's level, and writes the lux as numbers into that level's plan view; drawing again replaces, Erase removes, undo restores. Tested on the showcase house in the real page (tools/bimcraft-test/browser-lightdesign-bim.mjs 22/0). Window height is assumed 1.2 m; the plan view was checked through the model data, not by eye in Studio.

BimCraft Built · Live 4 – From: Discord community (Discord) docs/0.9-sessions/lightdesign-09.md
FeatureIL.1 Link to IL.1Comment on IL.1 Lighting design engine: room, photometry, inter-reflection (radiosity)

Built in the lab: lib/lightdesign. Direct light from .ies/.ldt plus the light bounced off floor, walls and ceiling as diffuse patches. Checks: energy conserved to 1.8 %, and a Monte Carlo photon trace of a 6 x 4 m office agrees to 1.4 %. No furniture, columns, windows or daylight.

CadCraftBimCraft Built · Live – – From: Discord community (Discord) docs/0.9-sessions/lightdesign-09.md
Discord, last sweep before 0.9 (2026-11-05) 5
FeatureDC.119 Link to DC.119Comment on DC.119 BimCraft: add a level below the lowest level

Asked 2026-11-04: is there a way to create a level below the lowest one made so far. Not checked in the code. Do: check whether a negative-elevation level can be added (basement, footings); if not, add Level below to the level controls with undo. bim-fix-09 2026-11-05: Checked first: no way existed (Add a level on top only; Add levels... takes heights from 0 up; typing a negative elevation moves every level above with it). Built: Levels panel > Add a level below (model-ops newLevelBelow): a level under the lowest, as tall as it, at a negative elevation, named Level -1, Level -2; nothing else moves; one Undo step; redo keeps the same GlobalId; walls can be drawn on it. Tests: node bin/test-bimcraft.mjs --levelbelow, tools/bimcraft-test/browser-model.mjs --only bm2. Help: draw-walls, site-building-and-levels.

BimCraft Built · Live 1 – docs/0.9-sessions/final-sweep-2026-11-05.md
Resin printing add-ons (RSN) 9
FeatureRSN.1 Link to RSN.1Comment on RSN.1 Resin slicer core: layers at the printer screen, hollowing, island check, layer preview (add-on slicer-resin)

Built in the lab: add-on slicer-resin over lib/printresin, in the 3D Print card under "Printing with: Resin". Layer pictures at the printer's screen resolution with smooth edges, hollowing with vent holes, floating pieces ringed on the layer preview, time, resin and cost. Free, nothing locked. Printer sizes are the makers' published numbers and the exposure numbers are starting points. Tests: slice 35/0, browser 24/0. Never run on a printer.

BimCraftModelCraftPartCraft Built · Live – Hand check is community test RSN.1-HAND (not blocking) From: Discord community (Discord) docs/0.9-RESIN-STAGE.md
FeatureRSN.2 Link to RSN.2Comment on RSN.2 Resin file: Elegoo GOO (add-on printer-resin-goo)

Built in the lab, from Elegoo's published Goo Format Spec V1.2 with no third-party source read. What the spec leaves open is now switchable on the card: byte order (big or little endian; big by default from an unverified secondary report) and checksum (negated sum or plain sum). The spec's own example offset cannot be reached by its field table (the table gives 195,477 bytes, the example 195,255), so the example is read as illustrative. Other gaps are marked SPEC-GAP in rs-goo.js. Read back by our own reader only (86/0). A real Elegoo printer is the check.

BimCraftModelCraftPartCraft Built · Live – Hand check is community test RSN.1-HAND (not blocking) From: Discord community (Discord) docs/0.9-RESIN-STAGE.md
FeatureRSN.3 Link to RSN.3Comment on RSN.3 Resin file: SL1 layered-image archive (add-on printer-resin-sl1)

Built in the lab, from public descriptions (Prusa publishes no specification): config.ini and numbered 8-bit PNG layers in a zip. Several keys are marked UNVERIFIED in rs-sl1.js. Read back by our own reader only (38/0). NanoDLP's different layout is not built.

BimCraftModelCraftPartCraft Built · Live – Hand check is community test RSN.1-HAND (not blocking) From: Discord community (Discord) docs/0.9-RESIN-STAGE.md
FeatureRSN.4 Link to RSN.4Comment on RSN.4 Resin exposure test: test part and a ladder of exposures (add-on resin-calibration)

Built in the lab: a 46 x 30 mm test part (square pillars 0.3 to 1.5 mm, round holes 0.4 to 1.5 mm, two bridges) and the same print at five exposures from 70 to 130 percent, one file each, in a zip. Test 10/0 and in the browser test.

BimCraftModelCraftPartCraft Built · Live – Hand check is community test RSN.1-HAND (not blocking) From: Discord community (Discord) docs/0.9-RESIN-STAGE.md
FeatureRSN.5 Link to RSN.5Comment on RSN.5 Resin supports and raft: pillars from islands, overhangs and the first layer

Built in the lab inside slicer-resin: the part is lifted on a raft; unsupported areas are sampled on a grid and each gets a pillar to the raft or the part below, fine tip and wider shaft; density light, medium, heavy. New and unproven: pillars do not brace each other, no suction-cup detection. Tests in test-slice.mjs.

BimCraftModelCraftPartCraft Built · Live – Hand check is community test RSN.1-HAND (not blocking) From: Discord community (Discord) docs/0.9-RESIN-STAGE.md
FeatureRSN.6 Link to RSN.6Comment on RSN.6 Resin files from Chitubox: CBDDLP and CTB (add-on printer-resin-chitu)

Built in the lab (owner 2026-11-08), clean room: both written from ONE prose document (cbiffle/catibo a Discord member/cbddlp-ctb.adoc, BSD-2-Clause repository; whether that file carries its own licence is for legal to confirm), no GPL code read. CBDDLP in full; CTB for the layout that document describes (version 2, 7-bit pixels), with the document's cipher as an option. Options on the card: edge smoothing levels, projection flag, resolution field type, encryption. The document says it was tested on the Creality LD-002R and files for the older Elegoo Mars; no other printer is named. Later CTB versions are NOT written (see RSN.10). Tests cbddlp 28/0, ctb 25/0, browser 31/0. Never loaded on a printer.

BimCraftModelCraftPartCraft Built · Live – Hand check is community test RSN.1-HAND (not blocking) From: Discord community (Discord) docs/0.9-RESIN-STAGE.md
FeatureRSN.8 Link to RSN.8Comment on RSN.8 Resin slicing on a worker thread

Built in the lab (2026-11-08). The resin slicer runs on a module worker (lib/printresin/rs-worker.js, started by rs-run.js) so the page stays alive while a big plate is sliced; the worker borrows the print stage's manifold file and ps-slice.js through the URLs the host already gives the filament slicer. The layers come back as run-length data, moved not copied. Cancel ends the worker. A page that cannot start a worker slices on the page as before. Same layers byte for byte as slicing directly (test-worker 14/0; the real-browser run confirms rs-worker.js starts). With FX.140 the drawing is also about 6 times faster. Not tried on a real printer.

BimCraftModelCraftPartCraft Built · Live – Hand check is community test RSN.1-HAND (not blocking) From: Discord community (Discord) docs/0.9-RESIN-STAGE.md
FeatureRSN.10 Link to RSN.10Comment on RSN.10 Resin files: Chitubox CTB versions 3, 4 and 5 (in add-on printer-resin-chitu)

Built in the lab (owner 2026-11-08: "build to version 3+"), our own Apache-2.0 code from a written specification (docs/resin-formats/ctb-v3-v5-SPEC.md), by a builder who saw nothing else. Two layouts under one name: plain tables (version 3, 4, 5) and encrypted settings (version 4, 5; AES and SHA-256 through the platform's WebCrypto). Options on the card: layout, version, edge smoothing, projection, layer scrambling. The vendor's disclaimer text is not reproduced (our own 320 bytes: a printer might check it). Which printer needs which layout is not established. The v2 writer's cipher constant is now an option too. Tests ctb3 170/0, incl. the spec's test vectors. Never loaded on a printer.

BimCraftModelCraftPartCraft Built · Live – Hand check is community test RSN.1-HAND (not blocking) From: Discord community (Discord) docs/0.9-RESIN-STAGE.md
FeatureRSN.11 Link to RSN.11Comment on RSN.11 Resin files: Anycubic Photon Workshop PWMX and PWS (add-on printer-resin-anycubic)

Built in the lab (owner 2026-11-08), our own Apache-2.0 code from a written specification (docs/resin-formats/anycubic-pwmx-SPEC.md), by a builder who saw nothing else. .pwmx (file version 1, optionally 516) and .pws. Options: mirror the picture, file version, edge smoothing, per-layer flag. Not written: versions 517 and 518 (the newer M5 and M7 families). The spec writer measured two public sample files (a .pws and a .pwmx) and found the real files differ from the reference code in three places; the spec records them. Tests pwmx 91/0, browser 38/0. Never loaded on a printer.

BimCraftModelCraftPartCraft Built · Live – Hand check is community test RSN.1-HAND (not blocking) From: Discord community (Discord) docs/0.9-RESIN-STAGE.md
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.