wip · platform overview

A universal template‑driven data platform. Also, perpetually, a work in progress.

Templates define the shape. WIP stores, versions, and serves anything that fits one — patients, characters, support tickets, technical docs, even its own session logs. One data model, one bulk‑first API, one Registry that keeps every identity straight.

🥧 World in a Pie — you can model the whole World with it, and it still fits on a Raspberry Pi.
A photoreal Earth embedded in a construction pie
the building blocks

Agentic and vibe‑coded apps are disposable. The data underneath usually isn’t.

Twenty quickly‑built apps means twenty incompatible data silos — and when the builders are a fleet of independent AI agents with no shared memory between them, “incompatible” is the default outcome, not the exception. WIP decouples data from the app: define a template, store validated documents, and when the app gets decommissioned — the data just stays. Validated, versioned, queryable by whatever comes next.

NS

Namespaces — the boundary everything else lives in

Every document, template, terminology, and Registry entry belongs to exactly one namespace — wip, dev, customer‑abc, however you carve it. It’s WIP’s tenancy boundary, not a bolt‑on: nothing below exists outside one, and deleting a namespace unwinds every store that touched it through a crash‑safe journal.

DOC

Documents

The record. A patient, a support ticket, a technical doc, even WIP’s own session logs — every one is a document, validated against a template before it’s ever stored.

TPL

Templates

The schema. Define fields, requiredness, and semantic types (email, URL, geo_point, duration…) once — every document that uses it inherits structure, versioning, and full‑text search for free.

ONT

Terminologies & ontologies

Controlled vocabularies with real hierarchy — OBO Graph JSON import, typed term relations (is_a, part_of…), polyhierarchy, traversal queries. A “list of values” problem, solved once instead of copy‑pasted into every app.

REG

Registry — identity, federated

One aspirin, four ID schemes, one canonical entry. Every entry gets one entry_id and as many synonyms as it needs — import from SAP, the FDA, a legacy system, and the Registry links them without remapping anyone’s ID.

REL

Relationships

Documents that reference other documents — modeled as ordinary templates and documents, not a bolted‑on graph layer. Namespace‑aware, queryable like everything else.

FILE

Files

Binary storage held to the same discipline as everything else — reference‑tracked, namespace‑scoped, versioned alongside the documents that point at them.

how it behaves

The building blocks are what you model with. This is how the platform actually runs.

Same conventions everywhere, whichever store answers the request — so the behavior you learn on one endpoint holds for all of them.

::

Bulk by default

Every write takes an array and answers 200 OK with per‑item results — success and failure sit side by side. No silent partial failures, no separate bulk‑vs‑single code path.

MCP

MCP‑native

94 tools and 5 resources, out of the box — every backend service exposed to AI coding assistants with bulk envelopes already unwrapped. No hand‑built HTTP calls.

CLI

One CLI, three targets

wip-deploy takes a preset and a target — dev, compose, or k8s — and renders the compose files, ingress config, or Kubernetes manifests to match.

1‑4

Four gated phases, then a different mode

Each phase gates the next — Phase 4 won’t start until Phase 3’s terminologies and templates are verified live. Ship, and /wip-improve takes over: surgical fixes only, never greenfield again.

// get WIP: github.com/peterseb1969/World-in-a-Pie (branch develop) — container images are prebuilt; wip-deploy itself ships with the repo, so clone first.
herding cats

Agentic Coding

This is an experiment in agentic coding. Every service, the console, the CI pipeline, the deployment automation — designed and built by a constellation of specialized AI agents: a backend engineer, a handful of app builders, a documentation generator, occasional bug‑fix and security specialists, coordinating through the same platform they’re building and filing a running record of every decision, dead end, and correction as they go. Judge for yourself whether the result holds up.

The agents keep their own working memory in an app that runs on top of WIP itself — so the platform is developed through a system that proves the model and depends on it at the same time.

10specialized agent roles
519cross‑agent cases filed
1human routing and approving it all
17 docs · generated from source, not hand-maintained

The Technical Library

Every doc below is written straight from the running code by a naive, single‑purpose generator that never reads the version it’s replacing. If the code doesn’t say it, the doc doesn’t either.