The SDK

Your backend fills the contract — in any language.

The Blueprint SDK opens a contract, binds in your data, and validates it — server-side, with zeroeval. It runs where your data already lives, in Node, Go, or Java.

Node · Go · Java · zero eval · runs on your infra · no data egress

server/handler.tsvalidated
const ui = load(contract)
await ui.resolveAll(async (src) =>
  src === '$data.countries'
    ? db.countries() : [])

const envelope = ui.toContract()  // validated
The envelope
The concrete contract — your data bound in, handed to the client.
Country · options
United Kingdom, Italy, … from your DB
Schema
valid ✓
The problem

Server-driven UI is only as safe as what fills it.

The usual ways to compose a screen on the backend all leak something — safety, ownership, or your sanity.

Templating on the server

Interpolating data into markup is an injection surface with no schema behind it.

A rendering service

Your data leaves your infrastructure for a vendor to compose the screen.

Bespoke glue per endpoint

Every screen re-implements load, validate and shape — slightly differently each time.

What it is

Open the contract. Bind your data. Validate. Return.

A small, typed SDK that turns a portable contract into a concrete one — filled with your data, checked, ready for the client.

Binds your data

Resolve `$data` bindings from your DB straight into the contract.

Validates the shape

Checked against the frozen contract schema — you can’t ship a broken screen.

Zero eval

It manipulates JSON and never evaluates it. PCI- and CSP-safe by construction.

Any stack

One contract. Node, Go, or Java.

The SDK is the same shape in every language — load, resolve, validate, return. Swap the backend; the contract and the client never change.

handler.ts
import { load } from '@dashforge/blueprint-node'

const ui = load(contract)
await ui.resolveAll(resolver)
const envelope = ui.toContract()
The difference

An SDK that runs on your infra.

It runs inside your own service, next to your own data — nothing is evaluated, nothing is sent to a third party, nothing meters you per request. That’s what lets a regulated team put it on the critical path.

Fits your stack

Your language. Your package manager.

Add it the way you add anything else, and call it from the framework you already run.

npm · NodeGo modulesJitPack · Javaany HTTP server
One core, more surfaces

The SDK is one half of the picture.

It fills the contract the Builder authors — and hands it to the runtime that renders it.

The Builder

Author the contract visually and export portable JSON.

Learn more

The runtime

Renders the envelope as real components on your design system.

Learn more

See it end to end

The whole path, from contract to a rendered screen.

Learn more
Get started

Fill the contract from your backend.