Skip to main content

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: openconstructionerp

That'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:

  1. Creates a local SQLite database in your home data folder
  2. Seeds demo data (projects, BOQs, cost catalogues)
  3. Starts the API + UI at http://127.0.0.1:8080
  4. Prints demo login credentials

No config files. No environment variables. It just works.

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

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

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

openconstructionerp-6.0.0-py3-none-any.whl (32.6 MB view details)

Uploaded Python 3

File details

Details for the file openconstructionerp-6.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for openconstructionerp-6.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a5f8fb9477788c83918a98ab373f7ceed94efc5950e09d8d9f4e1fa2c9310976
MD5 259bd443237a9dc5044eb4753dd0de78
BLAKE2b-256 5e0ff8f7894126452bd3763be0dc5a57e1a6b39c49b9b3f43a7c9eb4f4a3063b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page