Product Self-Hosted Docs View on GitLab Deploy self-hosted
Scheduling-first P3M

The schedule is the source of truth.

TruePPM runs agile and waterfall on one model, finds the critical path automatically, and forecasts your ship date with a real confidence interval — not a wish.

Deploy self-hosted Read the docs
Trusted by teams shipping hard things — CPM live P80 forecast Apache-2.0 core
artemis-iv-lift / schedule P80 · Aug 21
Vendor procurement
Foundation pour
Structural steel
MEP rough-in
Inspection
Finish-date forecast · 5,000 runs
P50
Aug 14
P80
Aug 21
critical path · 6 tasks · 0d float

Planning across engineering, hardware, and regulated delivery

Northwind Aerospace Cadence Robotics Meridian Health Forge Labs Halden Energy Tessellate

The bridge

Stop choosing between agile and waterfall.

Most tools force the call. TruePPM keeps one underlying model — tasks, dependencies, dates — and lets each team work the way it works. Plan a board, derive a schedule. Move a bar, the backlog updates. Same truth, two surfaces.

Agile cyclic · iterative · continuous
To do
Wire harness spec
ART-214 · 5pt
Telemetry schema
ART-219 · 3pt
In progress
Foundation pour
critical · 0d float
Done
Site survey
ART-201
Waterfall linear · deterministic · scheduled
Wire harness spec
Foundation pour
Telemetry schema
Inspection
same task · derived dates · two-way sync
01 · ONE MODEL

Cards and bars are the same task. Estimate in points, schedule in days — TruePPM keeps both in step.

02 · TWO-WAY

Close a sprint and the schedule advances. Push a bar and the backlog reorders. No copy-paste status meetings.

03 · PER-TEAM

Software runs the board, hardware runs the Gantt, the PMO reads the rollup. Nobody is forced off their method.

Monte Carlo forecasting

A ship date with a confidence interval.

Single-point dates lie. TruePPM samples thousands of possible runs across your estimates, dependencies, and risk ranges, then hands you a distribution — so you can commit to a P80 instead of a hope.

  • Per-task duration ranges, not fake precision
  • P50 / P80 / P95 dates on every milestone
  • Sensitivity: which tasks actually move the date
Finish-date distribution
n = 5,000
P50
Aug 14
P80
Aug 21
P95
Sep 02
Dependency network · auto-leveled
start pour steel ship procure fit-out
Critical-path engine

Know exactly what's holding the date.

A real CPM engine computes the longest path, float on every task, and the knock-on effect of any change — in milliseconds, as you type. Slip a critical task and the whole network re-levels. Slack tasks stay quiet.

6
tasks on the critical path
0d
float before the date slips
<50ms
full re-level on every edit
cross-project dependencies

Portfolio → Program → Project

One number rolls all the way up.

Every task feeds its program; every program feeds the portfolio. Health, variance, and forecast aggregate automatically — the CFO and the IC read the same truth at different altitudes.

Portfolio At risk
Spacecraft Program
7 programs · 41 projects · $214M
Schedule variance−6.2d
Cost performance1.02
Program At risk
Artemis IV
6 projects · 318 tasks
Forecast (P80)Aug 21
Critical tasks6
Project Critical
Pad 39C Refit
47 tasks · 6 critical
On critical pathFoundation pour
Float0d
Open core · self-hostable

PPM you actually own.

The core is Apache-2.0 and runs anywhere — your VPC, your cluster, your laptop. Bring your own Postgres, point it at your SSO, and keep your schedule data inside your perimeter. API-first, so if it isn't in the API, it doesn't exist.

  • One-command deploy with Docker Compose
  • SAML / OIDC SSO and SCIM provisioning
  • Offline-first sync — work disconnected, reconcile later
Read the deploy guide API reference
# clone & start the full stack git clone https://gitlab.com/trueppm/trueppm cd trueppm && docker compose up -d # forecast a program from the CLI curl -s api.ppm.internal/v1/programs/artemis/forecast \ -H "authorization: Bearer $TOKEN" | jq "p50": "2026-08-14", "p80": "2026-08-21", "critical_path": ["pour", "steel", "fit-out"]
Integrations

Wired into where work already happens.

Schedules don't live in a vacuum. TruePPM links commits to tasks, fires webhooks on state changes, and sends the digest your stakeholders actually read.

Git workflows

Reference a task in a branch or PR and TruePPM moves the card, logs effort, and updates the schedule on merge.

Email digests

Daily and weekly rollups per audience — the IC sees their tasks, the exec sees variance and the P80.

Webhooks & API

Subscribe to any state change. Sub-millisecond webhooks drive your CI, status pages, and incident tooling.

Get started

Put the schedule back in charge.

Free for small teams. Self-host the open core, or let us run it. Your data, your method, one source of truth.

Deploy self-hosted Read the docs