Loading0%

The blueprint builder: composing infrastructure from typed bricks

Assemble infrastructure from reusable, typed bricks across technologies, wire inputs and outputs, and add conditional logic, without hand-writing raw IaC.

  • blueprint builder
  • composition
  • authoring

TL;DR

Before you can run an environment, someone has to compose the blueprint.

I designed the builder that lets people assemble infrastructure from reusable, typed bricks across technologies, wire inputs and outputs, and add conditional logic, without hand-writing and stitching raw IaC.

The problem

Composing multi-technology infrastructure by hand is expert-only work: you juggle modules, inputs, outputs, versions, and conditionals across tools, and a small mistake surfaces late, at apply time.

That gatekept who could create infrastructure and made blueprints fragile.

The insight

A blueprint is a graph of typed components with wired inputs and outputs.

If the builder understands those types, it can guide composition (valid connections, allowed-value inputs, sane defaults) and catch mistakes at authoring time instead of apply time.

The solution

  • A composition surface where you add bricks, wire outputs into inputs, and configure each input with the right control, including allowed-value inputs and native paths rather than free-form strings.
  • Support for conditional blocks, so one blueprint can adapt across environments.
  • The result is a versioned blueprint that then runs through the same plan-apply loop (see the plan-apply case).
  • The design goal throughout was to make heterogeneous composition approachable and hard to get wrong, so more of the team can build infrastructure safely.

Impact

Lowered the skill floor for creating infrastructure and moved whole classes of error from apply-time to author-time.

Reflection

The leverage was in typing the components.

Once the builder knows what each brick expects, the UI can do the remembering so the person does not have to.