Baseplatedocs
Search the docs…⌘K
v2.4 12.3k
DocsGetting startedInstallation

Installation

Unstyled, accessible building blocks you theme once and reuse everywhere. Install the client, configure a single object, and start making fully-typed requests. Everything below is copy-paste ready — no scaffolding required.

Requires Node 18+

The runtime ships native ESM and the Fetch API. For older environments, pull in a polyfill before importing the client.

npmpnpmyarnbun
terminalbash
1$ npm install @baseplate/core

Configuration

Create a client once and reuse it across your app. The configuration object is fully typed; your editor will autocomplete every field.

client.tstypescript
1import { createClient } from "@baseplate/core"
2 
3const client = createClient({
4 apiKey: process.env.API_KEY,
5 region: "us-east",
6 timeout: 5000,
7})
8 
9const { data } = await client.query("projects")

Parameters

NameTypeDefaultDescription
apiKeystringSecret key used to authenticate every request.
region"us-east" | "eu""us-east"Edge region the client routes traffic through.
timeoutnumber10000Per-request timeout in milliseconds.
retriesnumber2Automatic retry count for idempotent calls.
cachebooleantrueEnable the in-memory response cache.

Response shape

Every successful call resolves to a discriminated union you can narrow safely:

response.jsonjson
1{
2 "ok": true,
3 "count": 3,
4 "data": [
5 { "id": "prj_8fa2", "name": "Atlas" }
6 ]
7}
Keep going

Guides

Hand-written walkthroughs for the most common things you’ll build with Baseplate.

Composable primitives

Start from headless parts — Field, Listbox, Dialog, Tabs — and assemble exactly the component you need with zero styling to unpick.

Read guide

Theme with tokens

Every color, radius, and spacing value is a CSS variable. Override one layer and the whole system re-themes — no component CSS to touch.

Read guide

Accessible by default

Semantic roles, focus management, and keyboard support ship in the box. WCAG 2.2 AA is the floor, not an add-on.

Read guide
baseplate — zsh
$baseplate init my-app
✓ scaffolding project
✓ installing dependencies
ready · http://localhost:3000
$baseplate deploy --prod
› building 4 routes
deployed in 8.2s → atlas.app
$
Baseplate

Unstyled, accessible building blocks you theme once and reuse everywhere.

DocsQuickstartGuidesAPI referenceExamples
ResourcesChangelogStatusRoadmapDiscord
CompanyBlogCareersSecurityContact
© 2026 Baseplate — an original demo built in the Primitive style for staqd. MIT licensed. v2.4.0 · build 8fa2c3e · node 20.11