Handbook

The PURISTA
handbook.

Start with the 15-minute tutorial, then go as deep as you need — from core mental models to enterprise patterns and live operations. Every chapter has builder-pattern examples in real TypeScript.

# install the PURISTA AI skill
npx skills add puristajs/purista --skill purista

# scaffold a new project
npm create purista@latest my-app

# add a service and its first command
purista add service user
purista add command signup

# run in development
npm run dev
// user/v1/command/signup
export const signUpCommand = userV1ServiceBuilder
  .getCommandBuilder('signUp', 'Register a user')
  .addPayloadSchema(z.object({
    email: z.string().email(),
    name:  z.string(),
  }))
  .setCommandFunction(async function (context, payload) {
    const userId = await context.resources.db
      .createUser(payload)

    await context.emit('user.registered', { userId })

    return { userId }
  })
01
Learning Paths & Tutorials

Structured hands-on learning journeys — start here

02
Mental Model & Philosophy

Why PURISTA exists — the fundamental principles and mental models

03
Service — The Container

Understand what a Service is — the fundamental unit of organization

04
Core Building Blocks

The patterns you'll use inside a service — high-level concepts, not detailed how-to guides

05
Stores — Data Persistence

Three kinds of storage for different purposes

06
Exposing Your Service

Making your service accessible to the outside world

07
Connecting Services — Event Bridges

Infrastructure connecting distributed services

08
Enterprise Patterns

Proven patterns for production systems

09
Observability & Operations

See, debug, and optimize production systems