Open-source construction cost estimation, multi-currency BOQ, AI vector matching, CAD/BIM takeoff without IfcOpenShell, resource-based cost DB import with example templates, 48 regional catalogues, 24 languages. AGPL-3.0. After install, run: openconstructionerp
Project description
OpenConstructionERP
Open-source construction cost estimation — BOQ, AI matching, CAD/BIM takeoff.
▶ After
pip install, type one command:openconstructionerpThat's the only thing you need to remember. It prints a welcome, asks press
o+ Enter to open the app in your browser, then starts the server at http://127.0.0.1:8080 (and shows a login).
Install
pip install openconstructionerp
Python 3.12+ required. That's it — no Docker, no Postgres, no Redis.
First run
openconstructionerp
This single command:
- Starts an embedded PostgreSQL database in your home data folder (no Docker, nothing to install)
- Seeds demo data (projects, BOQs, cost catalogues)
- Starts the API + UI at http://127.0.0.1:8080
- Prints demo login credentials
No config files. No environment variables. It just works.
If
openconstructionerpis not found right after install, pip most likely put the launcher in a Scripts folder that is not on your PATH (this is common on Windows). Run it through Python instead. This works from any folder and is the exact same app:python -m openconstructionerp
Subsequent runs
openconstructionerp
Same command every time. Your data persists between runs.
Other commands
openconstructionerp init-db # create the local database
openconstructionerp serve # start the server
openconstructionerp doctor # health check if anything looks wrong
openconstructionerp welcome # re-print the welcome screen
CLI reference
openconstructionerp serve [--host HOST] [--port PORT] [--data-dir DIR] [--open] [--quiet]
openconstructionerp init-db [--data-dir DIR] # Create local SQLite DB + data dirs
openconstructionerp doctor [--port PORT] # Run installation health checks
openconstructionerp seed [--demo] # Load demo project data
openconstructionerp version # Show version
What you get
- BOQ editor — hierarchical bill of quantities with assemblies, formulas, multi-currency
- Cost database — import your own rates (Excel/CSV) or use the bundled example templates
- AI estimation — vector search matches line items to historical cost data
- CAD/BIM takeoff — quantities from DWG/DXF and IFC/Revit (via DDC, no IfcOpenShell)
- 4D / 5D — cost-loaded schedule, earned value (SPI/CPI), cash-flow, what-if scenarios
- Validation — DIN 276, GAEB, NRM, MasterFormat rule packs flag issues at import
- Reporting — PDF/Excel exports, dashboards, BCF issue exchange
Configuration (optional)
Everything works with zero config. To customize, pass flags or set environment variables:
openconstructionerp serve --port 9000 --data-dir /var/lib/oce
# Or via environment:
DATABASE_URL=postgresql+asyncpg://user:pass@host/db # Use Postgres instead of SQLite
OE_CLI_PORT=9000 # Change the port
OE_CLI_DATA_DIR=/var/lib/oce # Change the data location
Links
- Docs: https://openconstructionerp.com
- Issues: https://github.com/DataDrivenConstruction/OpenConstructionERP/issues
- Source: https://github.com/DataDrivenConstruction/OpenConstructionERP
License
AGPL-3.0-or-later. Commercial licensing available — contact info@datadrivenconstruction.io
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file openconstructionerp-6.5.0-py3-none-any.whl.
File metadata
- Download URL: openconstructionerp-6.5.0-py3-none-any.whl
- Upload date:
- Size: 35.7 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3dcad5747592cc5fe1e4428ff4800cf725fa238b345a207e0dc025a23cac00dc
|
|
| MD5 |
8e99dcc76123f02fa1c64d3a81cee791
|
|
| BLAKE2b-256 |
de5ba91584978d7a362ca5a3c17c1157f149154e6067783ff73f0ba3ff5d803d
|