Skip to content
View python-construction-automation's full-sized avatar

Block or report python-construction-automation

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse

Construction Project Tracking & Change Order Automation

Construction Project Tracking & Change Order Automation

Production Python patterns for construction tech teams β€” parse the documents, enforce the taxonomy, sync the schedule, calculate the change order.

🌐 Live site β†’ construction-automation.org


Construction project tracking falls apart when RFIs, submittals, schedule exports, and change orders flow through hand-built scripts. Numbers drift between Procore and Sage, a misrouted RFI blows a response deadline, a change order quietly pushes the finish date, and by audit time nobody can prove which instruction governed the work on a given day.

This project is a deep, production-focused reference for building the Python automation that holds up under bid bursts, monthly pay applications, and audit review. Every page ships runnable, strictly-typed Python β€” Pydantic v2 contracts, Decimal money, Literal domain vocabularies, deterministic confidence-based routing, and structured logging β€” grounded in real construction data standards (CSI MasterFormat, WBS, discipline codes, document-status state machines).

What's inside

The material is organized around three complementary areas, each a hand-built guide with architecture diagrams, step-by-step implementations, verification tests, and troubleshooting playbooks.

Turn scanned drawings, RFIs, submittals, and change orders into validated, routable data. OCR preprocessing, field extraction, schema-validated parsing, async batching for document bursts, PDF/Excel sync, and error-handling protocols with dead-letter queues and replay.

The canonical data model behind trustworthy tracking. WBS mapping, budget code standardization across platforms, RFI schema design, submittal metadata and revision chains, security boundaries for subcontractor data, and fallback alert routing.

Get schedule data out of Primavera P6 and Microsoft Project and into your tracking database. XER/XML export parsing, critical-path delta detection, total-float erosion, baseline variance, out-of-sequence progress detection, and tamper-evident schedule-impact logging tied to change orders and RFI delays.

Who it's for

Construction tech developers, project managers, estimators, and Python automation builders working at the intersection of Primavera/MS Project exports, Procore, Sage 300, CSI MasterFormat, and the financial discipline that change orders demand.

A consistent engineering standard

Every code example on the site follows the same production rules, so the patterns compose across the whole pipeline:

  • Strict typing & validation β€” Pydantic v2 with field_validator/model_validator, regex-constrained domain codes (XX XX XX MasterFormat, PROJ-NNN-DIV-NN WBS), and Literal vocabularies for disciplines and document statuses.
  • Money is never a float β€” all costs use Decimal with explicit rounding, so rollups reconcile to the cent.
  • Deterministic routing β€” a single set of confidence bands (auto-route / human-review / quarantine) governs every classification and match, so behavior is consistent and auditable end to end.
  • Failure is first-class β€” dead-letter queues, idempotent retries, structured audit logs, and replay-after-fix instead of silent data loss.

Tech stack

  • Eleventy static site generator (Nunjucks + Markdown)
  • Hand-authored, theme-adaptive inline SVG diagrams β€” no runtime charting dependency
  • KaTeX for math, Prism for syntax highlighting
  • Progressive Web App: web app manifest, service worker, offline caching
  • Structured data (JSON-LD: TechArticle, HowTo, FAQPage, BreadcrumbList) on every page
  • Deployed on Cloudflare Workers

Local development

npm install
npm run build      # build the static site into _site/
npm run serve      # local dev server with live reload

Repository layout

content/     the guides, as Markdown (one folder per topic)
_data/       site metadata and section definitions
_includes/   Nunjucks layouts and partials
assets/      CSS, icons, images, client JS
index.njk    home page

License & contributions

Content and code are published for the construction technology community. Issues and suggestions that improve accuracy or add real-world construction detail are welcome.


Read the full library at construction-automation.org β†’

Popular repositories Loading

  1. python-construction-automation python-construction-automation Public

    Production Python patterns for construction project tracking & change order automation β€” document parsing, WBS/data taxonomy, and Primavera P6 / MS Project schedule sync.

    CSS