Measure straight on the PDF
Set the scale, trace the area, and every measurement lands in a ledger that carries its sheet and its revision into the bill.
Bill of Quantities
Every feature is a module: a folder with a manifest, a lazy-loaded page component and an entry in the registry. Drop one in, reload, and it shows up in the Modules page ready to toggle on.
frontend/src/modules/
├── _registry.ts ← add your import here
├── your-module/
│ ├── manifest.ts ← metadata, routes, nav, i18n
│ ├── YourModule.tsx ← main page (React.lazy loaded)
│ └── index.ts ← barrel export
Make frontend/src/modules/your-module/.
manifest.ts
Unique id, name, icon from lucide-react, category, optional deps, routes and nav items. Bundle translations if you need module-specific strings.
export default function YourModule() { ... }. Keep pure data logic in data/ and unit-test it with vitest.
Add the import + manifest to _registry.ts, and a nav.* key in i18n.ts for each language (the sidebar renders before async translations arrive).
Run npm run dev. Enable in Modules page → appears in sidebar → navigates via React.lazy. Search (/) picks up your searchEntries.
import { lazy } from 'react';
import { Sparkles } from 'lucide-react';
import type { ModuleManifest } from '../_types';
const MyModule = lazy(() => import('./MyModule'));
export const manifest: ModuleManifest = {
id: 'my-feature',
name: 'My Feature',
version: '1.0.0',
icon: Sparkles,
category: 'tools',
defaultEnabled: false,
routes: [{ path: '/my-feature', title: 'My Feature', component: MyModule }],
navItems: [{ labelKey: 'nav.my_feature', to: '/my-feature', icon: Sparkles, group: 'tools' }],
};
idexport default (required for React.lazy)_registry.tsnav.* key in all 4 language blocks of i18n.tsdefaultEnabled: false (opt-in)Start with 190+ built-in modules, then build or install your own. From estimating to BIM to the field, with an SDK, hooks and a marketplace so the platform becomes exactly the software your business runs on.
Up and running in one command
pip install openconstructionerp
docker compose up -d
+
more modules
See the module system
The whole chain in one take: a drawing becomes a takeoff, the takeoff becomes a bill, the bill carries its markups and the job is inspected on site. One data model underneath all of it.
Measure, price, plan, buy, build and settle in one application. Every screen hands its result to the next on one database, so nothing is retyped and nothing drifts. Open source, free under AGPL-3.0, runs on your own machine or server, and every record exports in open formats.
Set the scale, trace the area, and every measurement lands in a ledger that carries its sheet and its revision into the bill.
Bill of Quantities
Layers stay separate, so a secant-pile line is measured as itself rather than as part of the sheet it was drawn on.
Quantity Takeoff
Every element is countable, filterable by level and discipline, and links straight to a bill position.
Quantity Takeoff
A bill line opens into the resources it was priced from, each carrying its own class and its own currency. Turkish supply stays in lira, the admixture in euros, under one dollar total.
4D Schedule · 5D Cost
Every rate carries a minimum, an average and a maximum, and says how many estimate lines cite it.
Bill of Quantities
Browse unit and composite rates by region and catalogue, or keep your own, and pull a rate with the labour, material and equipment behind it straight into the bill.
Bill of Quantities
Budget, committed, actual and forecast on one screen, with earned value read off the same data rather than typed into a separate sheet. It will tell you the performance index you need from here to land on budget.
Cost-Value Reconciliation
The programme is generated from bill positions and stays linked to them, so a quantity that moves takes the dates with it.
4D model · Earned value
Each risk priced and rated on the same project, so the contingency you carry is a sum of named exposures rather than a percentage on the bottom line.
Change Orders
Every query carries its discipline, its due date and whose move it is, and an answer that arrives with cost in it turns straight into a variation.
Variations · Submittals · BIM viewer
Each inspection carries its checklist, its result and its date, so a failure becomes a task with an owner rather than a note on somebody's phone.
Punch list · NCR · Handover
Cost against value by cost head, with forecast and margin on every line, over a cash-flow curve that runs to completion. One head is showing a negative margin, which is rather the point of running the reconciliation.
Cash flow · Payment applications
Back to 01. A revision arrives and the same four stages run again, on the same data.
Four roles run the cycle above. 19 more run their own part of it, and each one gets a different set of modules.
Estimating, tendering, BIM, quantities, programme, quality, safety, cash flow, site. Switch on the ones your job needs, leave the rest off, write your own.
Download
A native desktop build for Windows, macOS and Linux. One installer brings the full platform with its own built-in database, so there is nothing else to set up. Free, open source, and your data never leaves your disk.
Windows 10/11 - 64-bit installer
macOS 12+ - Apple Silicon
AppImage, deb and rpm
curl -fsSL https://openconstructionerp.com/install.sh | shOne command and you are running
Install, then run
pip install openconstructionerpOne line, app plus database
docker compose upThe interface, the cost catalogues and the reports all switch together, so a designer in Warsaw, a quantity surveyor in Ankara and a site manager in Lyon can work in one project and each read it in their own language. Try it here.
Estimating, takeoff, scheduling, documents, quality and CAD/BIM import, all in the download. Cost data for 48 markets and 44 interface languages come with it. No paid tier, no seat count.
No account and no cloud in the middle. Projects stay in a folder on your own disk, and everything keeps working with the network switched off.
Database, server and interface ship as one program. Updating means running the next installer, and removing it leaves only your data folder.
Most open-source ERPs need an IT team and a development budget. This one does not: the desktop build installs like any other app, and you add a module by describing it in your own words.
A strong IT team and a budget for development.
A laptop you already own, and about ten minutes.
The same build runs on a laptop, a rented server or your own rack. Start small and move up later without rewriting anything.
One installer with its own database and interface. It opens with no network at all.
One person, works offline3 GB of memory is the floor. The office and the site open the same project in a browser.
The whole team, from anywhereRuns inside your own network. Drawings, costs and contracts stay on hardware you control.
The company, nothing leaves the buildingMany people, one set of numbers. Roles, permissions and approval routes per module, so the whole team works on one project without overwriting each other.
A module is a folder, not a fork. You never edit the core to add to it, which is why adding to it does not need a developer.
Describe the module in the words you would use with a colleague. The builder writes the specification; you do not write code.
Nothing is applied before you have seen it. The review step shows each file in full, and it stops there until you agree.
The module is written to disk and picked up in the same moment. No restart, no second switch, no deployment window.
Download the module, put the folder where the others are, reload the page. That is the entire procedure, and it is the same procedure for all of them.
The platform sits at the open centre of your software, not on top of it. Data flows in and out through open formats, a documented API and webhooks, so your estimate, your model and your finance system stay in step - and nothing you put in is ever trapped.
AI-ready data and API
Product names and logos shown here belong to their respective owners and appear only to identify the systems this platform exchanges data with. Their use implies no affiliation with, sponsorship by, or endorsement from those owners.
Push priced bills, cost breakdowns and progress claims out as structured Excel, CSV or JSON, or wire them straight through the REST API, so the numbers land in your finance system without re-keying.
Bring models and drawings in through open exchange formats - IFC for BIM, DWG and DGN for CAD - converted to one canonical model, and send review issues back out as BCF.
Connect your document store over the REST API and webhooks, or keep a folder in sync, so drawings, contracts and reports have a single source of truth.
Feed dashboards and data warehouses from the documented REST API and clean table exports in Excel, CSV, JSON and Parquet, the analytical column format, so the figures stay live instead of pasted.
Activities, durations and dependencies come in as XER or Project XML and go back out as Project XML or CSV, so the estimate and the programme share one set of tasks.
Subscribe to events with webhooks and drive the REST API from low-code automation flows built with n8n, our own workflow tooling, to connect anything to anything.
No lock‑in, by design.
Every figure is exportable, the formats are open, and the same documented API that runs the app is open to you. Your data stays yours - you can always take it with you.
Read the integration and API docsProduct names, logos and brands are the property of their respective owners and are shown only to indicate data-exchange compatibility. Their use does not imply any partnership, affiliation or endorsement.
Short walkthroughs on a real project in the app, from installing it to handing the job over.
4:41
How to Install OpenConstructionERP | Windows Setup & First Project
Install on Windows, open the sample project, set your language and region, pick your modules and invite your team.
12:00
Quantities, BOQ and AI estimating. On your own laptop.
A short walkthrough of the whole pipeline - drawing in, tender out. No voiceover, no narration, just the product doing what it does.
4:48
Build a Construction Estimate Step by Step
Builder's Playbook: Getting Started
5:55
Mengen aus PDF und DWG ermitteln
Lernprojekt Landshut
5:34
GAEB-Dateien kontrolliert austauschen
Lernprojekt Landshut
4:23
Tender Work to Subcontractors
Builder's Playbook Canada: Ontario
4:45
Manage Construction Change Orders
Builder's Playbook Canada: Ontario
5:23
Chantier : suivre les heures et le matériel
Builder's Playbook : gestion de chantier
3:44
Réception des travaux et déficiences
Builder's Playbook Québec
OpenConstruction Academy
Full series in English, German and French
All videos on YouTube
Each one walks a real construction workflow step by step, with what to do and why at every stage.
293 playbooks across 8 disciplines
Written for a marketGermany13Australia10Brazil10Canada10China10Spain10United Kingdom10Hungary10India10Mexico10New Zealand10Russia10Saudi Arabia10United States10South Africa10
What ships in the box on the current release. Cost data, CAD formats, modules and licensing, with the headline figures in one place.
ready-to-use cost items across trades and assemblies.
native CAD ingest, DWG, RVT, IFC, DGN, DXF and GLB into one canonical format.
plug-in modules covering the full site workflow, projects, BOQ, takeoff, tenders and more.
open-source core under AGPL-3.0. No vendor lock-in. Your data stays yours.
Pick the kind of company you run and the platform switches on exactly the modules that role needs, already wired together in one shared database. Hover or tap a profile to watch its module honeycomb light up, grouped by discipline and linked as a single connected system.
Every profile keeps the always-on platform core: projects, the cost database, resource catalog, assemblies, dashboards and admin. Profiles never lock anything away, they simply lead with the modules that matter most for the work, and you can add or drop any module later.
Brevart
Tekhne
ATMIID
Optimum Technology
Elevait
MAD Engineers
Construccions 360 Plus
Brevart
Tekhne
ATMIID
Optimum Technology
Elevait
MAD Engineers
Construccions 360 Plus
LMH
Niven Builders
DK Construction
Colas
Arkad
Basil Read
C&C Consulting
LMH
Niven Builders
DK Construction
Colas
Arkad
Basil Read
C&C Consulting
Tegrity Contractors
PW Pole Barns
Digitarh
Overzicht
CSTB
Forida
Yutopias
Virtuza
Tegrity Contractors
PW Pole Barns
Digitarh
Overzicht
CSTB
Forida
Yutopias
Virtuza
AGPL-3.0 on GitHub. Issues and the roadmap live there; if you want to see what's coming next or what broke last week, it's all on the commit log.
Every issue, PR and roadmap item is public on GitHub. Open an issue, comment on what matters, or send a PR. Contributions of any size are welcome.
Plain facts you can check yourself: an open licence, open formats and your data on your own server.
Behind every rate sits its recipe: the labour hours, the materials and the machine time the work really takes. Every work item in these bases comes broken down that way, ready to reprice for your market.
Worked examples from the bases above
Every base has its own line items and article codes. Priced bases are shown in euro for a like-for-like comparison; the coefficient bases show resource quantities from the national norm. Every description stays in the language you picked.
A straight side-by-side. Commercial suites lead on a few things, mostly integrations paid for over a decade. On everything else, OpenConstructionERP already matches or beats them, at zero licence cost.
| Capability | OpenConstructionERP | Enterprise estimating suite | Heavy civil bid tool | Legacy construction ERP |
|---|---|---|---|---|
| Open-source core (AGPL-3.0) | ✓ | ✕ | ✕ | ✕ |
| Self-host on your infra | ✓ | ~ | ✕ | ~ |
| AI takeoff from PDF / photo | ✓ | ~ | ✕ | ✕ |
| Multi-CAD ingest (DWG / RVT / IFC / DGN / DXF / GLB) | ✓ | ✓ | ✕ | ✕ |
| 120,000+ cost items out of the box | ✓ | ~ | ✓ | ~ |
| Real-time multiplayer (CRDT) | ✓ | ✕ | ✕ | ✕ |
| 45 languages in core i18n | ✓ | ~ | ✕ | ~ |
| Modular plugin architecture | ✓ | ✕ | ✕ | ✕ |
| Typical cost / seat / yr | € 0 · self-host | € 10-15k | € 6-12k | € 3-8k |
| Implementation / onboarding | € 0 · docs + community | € 20-80k | € 15-40k | € 30-150k |
| Contract term | None · cancel anytime | 1-3 yr lock-in | 1-3 yr lock-in | 3-5 yr lock-in |
Every feature is a self-contained package. Drop it in, pull it out - the running install picks it up in seconds, zero downtime.
Every feature is a Python package with a manifest. You can add one to a running install without rebuilding anything. The APIs are typed; the OpenAPI spec is generated, not hand-maintained.
make module-newfrom openestimate import Client, Project client = Client(url="https://api.yourco.com") # Create a project and import CAD project = client.projects.create( name="Logistics Hub - Jebel Ali", currency="EUR", ) cad = project.cad.upload("./plans.ifc") takeoff = cad.takeoff(ruleset="boq_quality") # AI matches costs, you confirm for pos in takeoff.positions: if pos.confidence > 0.85: pos.accept() print(project.totals.grand) # → Decimal('4_283_921.50')
# Create project $ curl -X POST https://api.yourco.com/v1/projects \ -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/json" \ -d '{"name": "Logistics Hub", "currency": "EUR"}' # → HTTP 201 Created # Location: /v1/projects/5fa4-... # Upload CAD and run takeoff $ curl -X POST .../projects/5fa4/cad \ -F "file=@plans.ifc" \ -F "ruleset=boq_quality" # → { "positions": 248, "confidence_avg": 0.91 }
# modules/my_module/manifest.py from openestimate.sdk import ModuleManifest manifest = ModuleManifest( name="oe_regional_prices", version="1.0.0", display_name="Regional Prices", depends=["oe_costs"], hooks={ "cost.match.pre": "adjust_for_region", }, ) # Drop this folder in modules/, restart. # Marketplace auto-discovers on next boot.
Deliberately boring choices. All open-source.
OpenConstructionERP grows out of a decade of open construction‑tech research. The cost database, CAD parsers and ML models it depends on were built and refined inside the same open lab, and ship as part of the same ecosystem.
For the past decade our team has worked on resource management for construction projects. Along the way we got curious about how the industry’s tools came to be - from the first attempts at design automation to today’s ERP platforms - and that turned into a couple of longer pieces (“The Lobbyists’ Wars and the Development of BIM” and “The History of the BIM Map”). It’s hard to see where things are heading without a sense of how we got here.
We’ve written a fair amount on these topics over the years, and some of it found a wide readership. Alongside the writing, we’ve consulted for construction and consulting firms, developers, and software vendors on how they handle project data - treating it as the basis for decisions rather than a byproduct of them. That work let us see the industry from both sides: the people who build the tools, and the people who use them every day. A lot of those observations ended up in the book Data-Driven Construction, now available in 16 languages (datadrivenconstruction.io/books).
Two other problems kept us busy. One was helping non-developers get into proprietary file formats that were never meant to be opened. The other was finding a cleaner way to describe construction work through a resource model. Both produced free tools: the DDC CAD/BIM converters (Revit®, IFC, DWG, DGN → structured data) on GitHub, and CWICR, a multilingual database of construction works and resources - over 120,000 items in 11 languages, published as OpenConstructionEstimate-DDC-CWICR.
All of it was groundwork for something we’d wanted to build for a long time: an open, modular ERP for construction. The latest generation of tooling finally made it practical to pull the methodology, data models, and earlier implementations together into one platform. It’s now public and open source.
In our experience the best ideas tend to come out of conversation - and out of disagreement. If the questions around construction’s move toward “Uberization,” and toward more transparent cost and time estimation, are interesting to you, we’d be glad to have you in that discussion.
DataDrivenConstruction Team
datadrivenconstruction.io
OpenConstructionERP has been under continuous development for more than six years and has benefited from contributions, feedback, testing, and domain expertise from many different people.
To maintain a consistent architecture and reduce security, dependency, and integration risks, the project follows a centralized integration model. Most production code is reviewed, consolidated, tested, and published through a single maintainer account. The GitHub contributor history does not necessarily reflect the actual number of people who have contributed.
A single publishing account represents a controlled integration and release process designed to preserve stability, security, and architectural consistency across the platform's interconnected modules.
AECOM
Drees & Sommer
VINCI Energies
Lindner
Artelia
bechtle
Merck
RBS wave
AECOM
Drees & Sommer
VINCI Energies
Lindner
Artelia
bechtle
Merck
RBS wave
Shapemaker
Scholze-Thost
VRAME
AXIA Energia
AFRY
Hofschröer
TDF
Renaissance Construction
Shapemaker
Scholze-Thost
VRAME
AXIA Energia
AFRY
Hofschröer
TDF
Renaissance Construction
Hyundai AutoEver
Sintagma
Trafikverket
TMM Group
Dar Al Riyadh
pbs Ingenieure
ZPP
SCON GmbH
Hyundai AutoEver
Sintagma
Trafikverket
TMM Group
Dar Al Riyadh
pbs Ingenieure
ZPP
SCON GmbH
Most civil design files are basically data prisons. Loads of useful info, alignments, surfaces, quantities, just sitting there, locked inside formats that were never meant to play nice with anything outside their original software. I’ve wasted way too much time trying to answer simple questions like ‘how many manholes are in this job?’ or ‘what’s the volume by phase?’, only to find out the data’s buried five layers deep in a DWG or DGN. Data Driven Construction fixes that. Their converters crack open these closed formats and give you structured data you can actually use, in Power BI, in Excel, or even in an LLM prompt if you’re doing something fancy. It’s not flashy, but it’s insanely useful. If you’re trying to move beyond screenshots and PDFs and actually use your design data, this is the kind of tool that makes it possible. It’s the difference between guessing and knowing. And honestly, it’s saved me more than a few Saturday mornings.
Be part of the movement with DataDrivenConstruction! Let’s make true freedom in data formats a reality and catalyze a new era of productivity and innovation in construction. The real and necessary journey from closed to “open” formats has not even started: True freedom in data formats, free from proprietary ties and accessible to all, is what we need to unlock innovation and collaboration across the construction industry, particularly benefiting the 99% of construction, i.e. SMEs and unchaining the sector for accelerated growth.
The whole platform is free, and nothing in it is hidden.
Bring the platform to companies you already know, and charge for what you add.
Two paths. Run it yourself for free under AGPL-3.0, or talk to us when you need hosted support, a commercial license for the converters, or anything else that shouldn’t live in the open-source license.
The full open-source platform. Run it on your infra, no strings attached.
When you need managed hosting, commercial licensing for the converters, or anything that doesn’t fit under AGPL, tell us what you need and we’ll scope it.
Discovery → workshop → modules picked → built → deployed on your hardware. Source delivered.
Hands-on sessions: estimating, BIM-to-BOQ, AI takeoff, GAEB pipelines. Recorded for your team library.
Standards mapping, cost-DB strategy, pipeline architecture, code review.
Public workshops shown below. Many major enterprise engagements remain under NDA.










Awesome workshop, Artem! Preparations are in full swing! I’m already looking forward to the hackathon in the new year! 💪🏻
What happens when you not only organize construction processes, but also analyse them intelligently? This was the topic of our workshop with Artem Boiko on “Data-Driven Construction”. The focus was on the question of how we can make better use of existing data - to make construction projects more efficient, more transparent and less error-prone. Using specific application examples, Artem showed how structured construction data can help to maintain an overview, identify supplements at an early stage and improve communication between planning and execution. Particularly exciting: how digital tools and models can already be used today to automate processes. Data-driven construction is no longer a topic for the future - we are right in the middle of it. The workshop showed how great the potential is if we work together and really make data work for us.
Artem Boiko delivered an outstanding presentation to the entire Shapemaker team, providing deep insights into data migration from engineering software and related topics. His expertise and clear communication made complex concepts easy to grasp, equipping our team with practical knowledge we can apply immediately. Highly recommend his services for anyone seeking clarity and actionable strategies in this space!
Ich fande DataDrivenConstruction Workshop sehr interessant. Meiner Meinung nach konnten alle folgen. Man merkt auch anhand deiner Folien wieviel Zeit, Ausdauer und Mühe du hineingesteckt hast. Auch die Live Präsentationen waren super. Das einzige was ich bemängeln würde, wäre die Anzahl der Folien, dadurch kamen zu viele slides zustande. Aber das ist meckern auf dem höchsten Niveau. Rundum war es der beste Workshop bei dem ich war. Außerdem bist du auch eine sehr angenehme Person.
Die DataDrivenConstruction Schulung fand ich insgesamt wirklich spannend und sehr bereichernd. Besonders gut gefallen haben mir: der „historische“ Hintergrund zu den verschiedenen CAD-Softwares (das war spannend zu hören und hatte etwas von Investigativjournalismus); der interessante Ansatz zur Automatisierung über DataFrames; deine eigenen praxisnahen Beispiele zur Prozessautomatisierung im Bauwesen; und der Einblick in aktuelle Trends wie Claude Code und OpenClaw, du hast das Thema mit Leben gefüllt. Einziger Nachteil: Es war wirklich viel Input in nur zwei Tagen. Gleichzeitig hast du sehr gut aufgezeigt, wie wir uns selbst weiter orientieren können, zum Beispiel über das strukturierte Aufzeichnen unserer Prozesse im Miro-Board. Vielen Dank nochmal für die Schulung und den Austausch.
It was a fantastic workshop with exciting content that we, and I personally, learned a lot from. Thank you for taking so much time for us. We look forward to trying out what we learned as soon as possible and incorporating it into our projects! #bleedingedge
I work on this project solo, so I prioritize teams that are ready to allocate real resources to a pilot, budget, timeline, a sponsor. Send the brief and I’ll get back to you within a few days.
The free desktop app for Windows, macOS and Linux, or one command on your own server. Open source under AGPL-3.0.
Or run it on a server
pip install openconstructionerp
docker compose up -d
One command and the full ERP is running. PostgreSQL is built in, nothing else to set up. See the install docs.
One short email a month - new modules, CAD parser releases, behind-the-scenes notes. No spam, unsubscribe any time.