Back to case studies

AVX-CS-004 · Construction SaaS · Product We Engineered

StructumAI Schedule: Web-Native Construction Scheduling

A browser-based scheduling module in the spirit of MS Project and Primavera P6: interactive Gantt, a real critical-path engine, dependencies, calendars, and baselines, integrated into the platform with SSO and tenant isolation.

ProductStructumAI
Year2026
EngagementTwo-phase build
FocusGantt + CPM · Scheduling Engine · Platform Integration
StructumAI Schedule: Web-Native Construction Scheduling
CPM

real critical-path engine

Forward and backward passes, total and free float, and calendar-aware dates, the math planners trust desktop tools for, running in the browser.

4

dependency link types

Finish-Start, Start-Start, Finish-Finish, and Start-Finish with lag, plus automatic driving-relationship detection and critical-path highlighting.

1

round-trip to load a schedule

A single bootstrap endpoint primes schedule, tasks, dependencies, and calendars, so the grid and Gantt render immediately.

Executive Summary

What we built, and why it matters.

Construction planners live in MS Project and Primavera P6, powerful tools that are desktop-bound, expensive, and disconnected from the project's drawings, estimates, and documents. StructumAI needed scheduling as a first-class module of its construction-intelligence platform: as capable as the desktop tools, but web-native, multi-user, and behind the same login.

Avrixo built it in two phases, first as a self-contained scheduling product with a real critical-path engine, then integrated into the StructumAI platform: same sign-on, same projects, same database, correct tenant isolation. It's live on staging, reachable from the platform's top navigation, with sample data loaded for client UAT.

01

The Core Problem

The bottleneck beneath the business goal.

Desktop schedulers silo the schedule on one person's machine. Collaboration means emailing files and reconciling versions, licensing is expensive for occasional users, and the schedule never connects to the rest of the project's data.

Matching desktop-class planning power on the web is an engineering problem: a real CPM engine with forward/backward passes and float, four dependency types with lag, working calendars that drive every computed date, baselines, and an interface fast enough that planners don't miss the desktop, all multi-tenant and permission-safe inside a shared platform database.

02

The Technical Solution

Engineered for accuracy, scale, and trust.

The planning surface pairs an MS-Project-style spreadsheet grid with a synchronized interactive Gantt: drag to move or resize bars, draw dependency links, zoom from day to quarter. The task model covers durations, milestones, WBS roll-ups, constraints, deadlines, and construction-aware fields like trade, zone, work package, and permit flags.

The scheduling engine is implemented in TypeScript: Critical Path Method with forward and backward passes, total and free float, driving-relationship detection, and working calendars (workweeks, holidays, exceptions, hours-per-day) that drive every calculated date. Baselines capture snapshots for planned-vs-actual comparison, and a guided wizard imports CSV, Excel, and JSON through an async, progress-tracked job.

The workspace loads in a single round-trip: one bootstrap endpoint primes schedule, tasks, dependencies, and calendars, hydrating Zustand and React Query together so the grid and Gantt render immediately. Mutations are optimistic with controlled server reconciliation. For platform integration, all scheduling tables live in a dedicated Postgres schema on the shared multi-tenant database, projects come from the platform, and the shared-JWT cookie provides single sign-on. The module never touches the platform's auth model.

03

What's Inside

Every capability, grouped by workflow.

Planning Surface

  • Dual view: synchronized spreadsheet grid and interactive Gantt
  • Drag to move/resize bars, draw dependency links, zoom day → quarter
  • Durations, milestones, WBS roll-ups, constraints (ASAP, SNET, FNET, MSO, MFO)
  • Construction-aware fields: trade, zone, work package, permit/inspection flags

Scheduling Engine

  • 4 dependency types (FS, SS, FF, SF) with lag and driving-relationship detection
  • Critical Path Method: forward/backward pass, total & free float
  • Working calendars: workweeks, holidays, exceptions, hours-per-day
  • Configurable critical threshold and automatic critical-path highlighting

Productivity & Data

  • Baselines: snapshot and compare planned vs. current
  • Guided import (CSV, Excel, JSON) with field-mapping wizard, async progress-tracked job
  • Export to Excel, CSV, and a branded PDF schedule report
  • Reusable schedule templates, Ctrl-K command palette, undo/redo, saved views
04

Architecture Notes

System decisions that made the product viable.

Critical-path engine in TypeScript: forward/backward pass, total & free float, calendar resolution, and a configurable critical threshold.

Single-round-trip bootstrap endpoint that hydrates the store and query cache together: grid and Gantt render immediately.

Dedicated `schedule` Postgres schema on the shared platform database, environment-driven, avoiding table collisions with sibling modules.

Versioned, persisted client cache that always revalidates on mount and reconciles 404s to server truth, instant first paint without phantom records.

05

Tech Stack Matrix

Infrastructure behind the outcome.

Discuss a similar build

Experience Layer

Next.js 16 (App Router) · React 19 · TypeScript · Zustand

Scheduling Engine

Custom CPM Engine · 4 Dependency Types · Working Calendars · Baselines

Data & Platform

PostgreSQL (raw SQL) · TanStack React Query · Shared-JWT SSO · AWS S3

Quality & Ops

Playwright E2E · PM2 + nginx · Async Import Jobs · PDF / Excel Export

Start a Conversation

Need a system built like this?

Fixed scope, clear milestones, and a team that ships production systems end to end.