Feasibility, design, construction, turnover and operations — on one open IFC model. Author it in the browser, issue the drawings, run the job, hand over verified as-built data. No proprietary format. No per-seat licence. Runs offline.
Making the most powerful thing in AEC feel like the simplest.
No account, no sign-up. The desktop app opens a real IFC in minutes; the browser demo runs the viewer with no backend at all on bundled sample models.
Rework figures: Construction Industry Institute (cause ranking, IR-153) and published US aggregate. Full capability list → · Guides · What's shipped · Run the full stack · GitHub
A developer checking whether it pencils and a superintendent logging a punch item in the sun are not the same user with different permissions. They are different products that happen to share a model. Massing routes to the ten things you touch today, and keeps the rest one keystroke away — deferred, not deleted.
Does it pencil, by Friday?Zoning → scheme → returns. One number, and the chain back to the slab it came from.
Is the model clean and issued?Model, IDS and clash, drawing set. Density, keyboard, and an undo you trust.
What's in my court today?RFIs, submittals, change orders, pay apps — as a queue, not a catalog.
Log it before I forget it.Photo → punch or observation. Three taps, one thumb, offline, with a visible queue.
Why this shapes the product: 47% of contractors name getting people to use new technology their single biggest challenge — ahead of cost or integration (AGC, 2024) — and 12% of features drive 80% of daily use across 615 measured subscriptions (Pendo, 2019). Deferring advanced features rather than deleting them measures 30–50% faster first-task completion (Nielsen Norman Group). The full design audit →
The live demo doubles as a standalone openBIM viewer — no signup, no install, no upload: small IFC files parse right in the browser (web-ifc/WASM), so your model never leaves your machine.
Model workspace → Open ▾ → pick your .ifc (or a bundled sample tower). Orbit, section, measure, isolate — and click any element for its full property sets, type, and quantities.
Read-only model QA on what you opened: class/storey breakdown, property coverage, georeferencing sanity — the honest first look before a model goes into coordination.
The same app authors: blank IFC → walls, steel, MEP, drawings, code pre-check, 5D. Download the free desktop app or run the full stack — same viewer, whole platform.
Free single-project desktop app — the whole platform in one offline install (no Docker, no login). Pick your platform; each opens the latest release. Builds are currently unsigned, so Windows SmartScreen / macOS Gatekeeper may warn on first launch.
.exe installer or .msi — 64-bit. Get latest →
.dmg — Apple Silicon (arm64). Get latest →
.AppImage or .deb — x86-64. Get latest →
All releases & checksums: github.com/ibuilder/massing/releases. Prefer the server stack? Run it with Docker ↓
Acquisition & design · construction · development finance — all reading and writing the same IFC file, so a design change re-forecasts the deal and a field verification lands on the same element the estimator priced.
The app is organised into Deal · Design · Planning · Schedule · Cost · Work · Operate — one structure for every role, rather than a different rail per persona. A register lives in exactly one room, so what you learn in one transfers to the next; Work is simply whatever is in your court right now; and Operate is the asset in service, where it spends most of its life.
A vitals strip runs along the bottom of every room — LOD · area · $/ft² · float · IRR · health — computed from the one model. That is the point of a single source of truth: two rooms cannot quote different figures, because there is only one set. And where it cannot compute a value it shows an em-dash and the reason, never a zero — a figure with a missing denominator is not a figure, and a confident wrong number is worse than an absent one, because a blank gets chased and a number gets cited.
The platform is a web app + services stack, run with Docker. It's an installable PWA, and ships as signed Tauri 2 desktop installers (Win/macOS/Linux) with auto-update — see Download; mobile is on the roadmap.
# 1. get the code git clone https://github.com/ibuilder/massing.git && cd Massing # 2. configure (set strong secrets + AEC_RBAC=1 for anything but local dev) cp .env.example .env # 3. build + run the whole stack (web, API, Postgres, MinIO) docker compose --profile full up --build # → web http://localhost:8080 # 4. (optional) fill a demo project across all relation chains docker compose --profile full --profile seed run --rm seed
/api to the API (same-origin, no CORS),
serves the viewer with the cross-origin isolation web-ifc needs, and persists
Postgres / MinIO / IFC volumes. Every config knob is documented in
.env.example.
| OS | Windows / macOS / Linux (anything Docker runs on) |
| Docker | Docker Desktop / Engine 24+ with Compose v2 |
| Ports | 8080 (web), 8000 (API), 5432 (Postgres), 9000/9001 (MinIO) |
| Browser | A current Chromium/Firefox/Safari (WebGL2 + WASM) |
Run the web viewer and API directly for hacking on the code.
# web viewer (offline; copies WASM automatically) cd apps/web && npm install && npm run dev # http://localhost:5173 # backend API (Python 3.11+ preferred) cd services/api && python -m venv .venv && .venv/Scripts/activate pip install -r requirements.txt -r requirements-dev.txt PYTHONPATH=src uvicorn aec_api.main:app --reload # http://localhost:8000 # run the test gate python services/api/run_tests.py
Full docs in the repo: the README, GC portal, and platform roadmap.