Skip to main content
Getting started

From an empty folder to a running platform.

Two commands stand between you and a complete backend — database, auth, content, email, workflows and the console, running locally and ready to deploy.

1

Create your project

The generator scaffolds a working project — pick a template, and you get example functions, wirings, and a local database schema to start from.

$ npm create pikku@latest
✔ template downloaded · dependencies installed
→ cd my-app
2

Start the whole platform

One command boots everything. Not just an HTTP server — the database is introspected and typed, auth and content are live, email previews work, and the console is watching all of it.

~/product — zsh
$ npx pikku dev
◇ starting local platform…
database postgres — introspected, types generated
auth, content, secrets — ready
email previews · workflows · agents — mounted
console localhost:3000/console
api localhost:3000
Database up, schema introspected, end-to-end types generated
Auth, content, secrets and email previews — already working
The console at localhost:3000/console shows every function, wire and workflow
Exactly what runs in production — no separate local setup to maintain
3

Write a function, wire it up

A Pikku function receives your services and typed input — no decorators, no classes. Wiring connects it to the outside world. Add more wires whenever you like; the function never changes.

src/items.functions.ts
export const listCategories = pikkuSessionlessFunc({
expose: true,
description: 'List all product categories.',
output: ListCategoriesOutput,
func: async ({ kysely }) => {
return kysely
.selectFrom('category')
.select(['categoryId', 'name', 'slug', 'description'])
.orderBy('name')
.execute();
},
});
src/items.http.tsadd more anytime
// Wire a single route — good for one-offs
wireHTTP({
method: 'get',
route: '/items/:itemId',
func: getItem,
auth: false,
});
4

Ship it

The same application deploys three ways — a standalone binary you run anywhere, your own cloud, or fully managed on Fabric.

Standalone

One self-contained server you run on infrastructure you control.

npx pikku deploy apply -p standalone

Your cloud

Deploy to Cloudflare or AWS. Your account, your bill, no lock-in.

npx pikku deploy apply -p cloudflare

Fabric

Managed hosting with observability and an assistant that knows your system.

npx pikku fabric deploy apply

Run npx pikku deploy plan first to see exactly what will be created.