Tessera docs

Launch Tessera

Launch

Getting started

Quickstart

Create a project, define a table and run your first typed query in about ten minutes.

Before you start

You need Node.js 20 or later and a Tessera account. The CLI works on macOS, Linux and Windows (WSL).

Build your first endpoint

1

Create a project

Run the create command. It scaffolds schema.ts, a .env file and a generated client folder.

Terminal
npm create tessera@latest my-appcd my-app

2

Define a table

Open schema.ts and add a table. Columns are typed, and you can mark them as required, unique or give them a default.

schema.ts
import { table, uuid, text, boolean, timestamp } from "tessera" export const todos = table("todos", {  id: uuid().primaryKey(),  title: text().notNull(),  done: boolean().default(false),  createdAt: timestamp().defaultNow(),})

3

Push the schema

Tessera plans the migration, shows you the SQL and applies it to your development environment.

Terminal
npx tessera push

4

Query it

Import the generated client and read your first rows. The result is fully typed.

app.ts
import { db } from "./tessera" const open = await db.todos.where({ done: false }).all()// open: Todo[]

Development data

Your development environment starts empty. Use npx tessera seed to load sample rows from seed.ts.

What you built

You now have a Postgres table, a migration history and a typed client. The same schema also powers the REST API, so GET /v1/rows/todos works straight away.

Was this helpful?

© 2026 Tessera, Inc.

Support

Status

Create a free website with Framer, the website builder loved by startups, designers and agencies.