Home  /  Cases  /  Enterprise Construction · Analytics
Enterprise Construction · Analytics

CPEC — enterprise construction analytics in production

We partnered on CPEC (Construction Project Estimation & Control): a multi-tenant platform that ingests engineering, procurement, and site progress data and gives project managers a trustworthy picture of buildability, cost, and performance — now running in production on live construction work.

50+ per deploy
Concurrent users
10k+ isometrics
Project scale
Production
Status
The challenge

Capital construction is unforgiving to siloed data. Drawings change, purchase orders slip, and progress is updated in the field — while project managers spend days reconciling exports before anyone agrees what “on track” means. Our partner understood the domain deeply; they needed a team that could translate that expertise into reliable software: imports that survive messy real-world files, calculations that respect construction rules, and dashboards executives and planners will actually use.

Our approach

We joined early enough to shape architecture and delivery rhythm, not only implementation tickets. Together we defined how isometrics, bills of material, purchase orders, and progress updates flow through validate → preview → approve → load, then into queue-backed analytics that can run for minutes on large projects without blocking the UI. The stack separates a Vue.js SPA, a FastAPI control plane, Celery workers on RabbitMQ, and isolated MariaDB tenants per customer — with Auth0, OneDrive, and cloud deployment paths for enterprise evaluation.

The outcome

Teams use CPEC today for buildability analysis, cost and man-hour estimation, progress measurement, material tracking, work-package performance, and supplier visibility — one coherent system at cpec.ai rather than stitched-together tools. The platform supports 50+ concurrent users per deployment, 10,000+ isometrics on large jobs, sub-second reads for typical API calls, and asynchronous runs for heavy calculations. We continue to evolve predictive analytics and richer visualisation on the same foundations.

Product

For project teams

  • Engineering, procurement, and progress in one place instead of manual reconciliation.
  • Buildability insight — what can be built now, what is blocked, and how that changes as materials arrive.
  • Cost, man-hour, and variance views planners can defend; planned vs. actual trends and material-risk alerts.
  • Web uploads, scheduled jobs, and Microsoft OneDrive integration with webhook-driven updates.
Platform

For clients evaluating a dev partner

  • Complex domain logic modelled in code and schema — not hard-coded one-offs.
  • Celery workers behind RabbitMQ so APIs stay responsive under heavy file and analytics load.
  • Multi-tenant SaaS: separate database per customer, JWT via Auth0, tenant context on every request.
  • Dockerised stacks, Terraform-managed cloud paths, and architecture docs suitable for handover and audits.

Cooperating services,
not a monolith.

Each layer scales and evolves independently — interactive app, API control plane, and queue-backed computation so new features do not destabilise what is already in production.

01 · Client

Web (Vue.js SPA)

Dashboards, import workflows, and role-aware navigation. Chart.js and ApexCharts for analytics, Mapbox for geo views. Auth0 in the browser with JWT-backed API calls.

  • Vue.js 2.x + TypeScript
  • Auth0 SPA SDK · Axios
  • Sentry for client observability
02 · Control plane

API (Python · FastAPI)

REST surface for accounts, projects, users, imports, reference data, analytics, and reporting. Pydantic validation, SQLAlchemy persistence, auto-generated OpenAPI for integrators.

  • Per-tenant DB routing on every request
  • Validate → preview → approve → load pipeline
  • Bearer JWT on protected routes
03 · Workers

Analytics (Celery · RabbitMQ)

File validation and loading, buildability and construction-performance calculations, alert detection, and other work kept off the request thread. MariaDB with system-versioned tables for audit and historical analysis.

  • Pandas / NumPy analytics pipelines
  • Rule-based alerts with SendGrid email
  • 10k+ isometrics · async heavy jobs
Engineering summary

We delivered a full-stack construction assurance platform: Vue.js and Auth0 on the front, FastAPI and isolated MariaDB tenants in the middle, and Celery-backed analytics that ingest engineering, procurement, and progress data at project scale. The architecture separates UX from computation and exposes a clean API boundary — the pattern we use when a client needs enterprise software that must grow for years without a rewrite.

Have a workflow that
looks like this one?

Schedule a free consultation