Symulate Documentation

Mock your backend with AI-powered data generation

Symulate is a developer tool that lets you build frontends without waiting for the backend. Define your API endpoints with TypeScript schemas, and Symulate generates realistic mock data using AI. When your backend is ready, switch seamlessly to production with zero code changes.

Quick Links

Key Features

AI-Powered Data Generation

Generate realistic mock data with custom instructions:

mock: {
  count: 10,
  instruction: "Generate software engineers from San Francisco tech companies"
}

Full TypeScript Support

Automatic type inference from your schemas:

const UserSchema = m.object({
  id: m.uuid(),
  name: m.person.fullName(),
  email: m.email(),
});

export type User = Infer<typeof UserSchema>; // Types inferred automatically!

Zero-Config Production Switch

Symulate automatically detects NODE_ENV=production and routes to your real backend. No code changes needed!

CI/CD Ready

Faker mode runs unlimited tests without an API key:

SYMULATE_MODE=faker npm test

Framework Agnostic

Works with React, Vue, Svelte, Angular, and any JavaScript framework.

Use Cases

Frontend Development

Build your UI while the backend team works on APIs. Switch to production seamlessly when ready.

Testing

Generate thousands of realistic test scenarios without API rate limits.

Demos & Prototypes

Create impressive demos with realistic data in minutes.

API Design

Define and test your API contracts before backend implementation.

Installation

npm install @symulate/sdk

Getting Started

  1. Get an API Key at platform.symulate.dev
  2. Follow the Quickstart Guide
  3. Choose your framework from the Examples
  4. View full SDK documentation on npm

Example

// Define your schema
const UserSchema = m.object({
  id: m.uuid(),
  name: m.person.fullName(),
  email: m.email(),
  department: m.string("Tech company department"),
});

// Create endpoint
export const getUsers = defineEndpoint<User[]>({
  path: '/api/users',
  method: 'GET',
  schema: UserSchema,
  mock: {
    count: 10,
    instruction: "Generate diverse tech company employees"
  },
});

// Use it!
const users = await getUsers();

Ready to get started?

Follow our quickstart guide to build your first endpoint in 5 minutes.

Get Started →