Skip to main content

Open-source TypeScript framework

One function.
Every protocol.

Write a typed function once. Pikku wires it to REST APIs, cron, queues, workflows, WebSockets, CLI, MCP, and AI agents. Deploy anywhere.

REST API
Cron job
Queue worker
Workflow
CLI command
WebSocket
MCP tool
AI agent

Write. Wire. Run.

Define your logic once. Wire it to any protocol. Run it on any runtime.

1
Write a functionTyped inputs, outputs, and permissions.
export const createInvoice = pikkuFunc({
input: z.object({ orderId: z.string(), amount: z.number() }),
output: InvoiceSchema,
func: async ({ db, email }, { orderId, amount }) => {
const invoice = await db.invoices.create({ orderId, amount })
await email.send({ to: invoice.customer, template: 'invoice-created' })
return invoice
},
permissions: { user: isAuthenticated },
})
2
Wire it to surfacesSame function. Any combination.
wireHTTP({ method: 'post', route: '/invoices', func: createInvoice })
wireScheduler({ schedule: '0 9 * * 1', func: createInvoice })
wireQueueWorker({ queue: 'billing', func: createInvoice })
wireCLI({ program: 'billing', commands: { invoice: createInvoice } })
pikkuAIAgent({
name: 'billing-assistant',
tools: [createInvoice],
model: 'anthropic/claude-sonnet-4-5',
})
3
Run on any runtimeFastify, Express, Lambda, Cloudflare, Bun — your call.
// Fastify
import { pikkuFastify } from '@pikku/fastify'
const app = await pikkuFastify(pikku)
await app.listen({ port: 3000 })

// Or Lambda, Cloudflare Workers, Express, Next.js...
// Same Pikku project. Any runtime.

"So many places in my code base have like three entry points: CLI, public (sometimes protected) HTTP API and internally from within the API. Would be so nice having everything just an invoke away. With Nest it's a pain because you basically have to start the whole API up just to run CLI command."

Alex Harley, Co-founder @ Superbridge

Why Pikku

The framework that multiplies your code.

Stop writing glue. Every function you write can serve every protocol your app needs.

Write once, wire anywhere

One function serves REST, WebSocket, cron, queues, CLI, MCP, and AI agents. No adapter code.

End-to-end type safety

Zod schemas, typed services, auto-generated clients. Compile-time guarantees across the stack.

Any runtime

Deploy to Fastify, Express, Lambda, Cloudflare Workers, Bun, or Next.js. Same project, zero lock-in.

Built-in auth & permissions

Session management, JWT, and role-based access — baked into every function invocation.

Auto-generated OpenAPI

Your API spec stays in sync with your code. Always accurate, never stale.

Typed clients

Generated HTTP, WebSocket, and RPC clients. No manual typing, no drift.

Built-in

A control plane for your entire app.

The Pikku Console gives you a visual overview of every function, workflow, agent, route, and config — per environment. No extra server needed.

Pikku Console — visual control plane showing functions, workflows, agents, and configuration

Functions explorer

Browse every function, its types, permissions, and which protocols reference it.

Workflow runner

Visualize workflow graphs, run them with custom input, and stream progress in real time.

Agent playground

Chat with your AI agents, test tool approvals, and inspect conversation history.

API overview

HTTP routes, WebSocket channels, MCP tools, and CLI commands — all in one view.

Secrets & config

Manage secrets, variables, and OAuth2 credentials per environment with validation.

Spotlight search

Cmd+K to find any function, route, workflow, or config item instantly.

Fabric

Serverless everything. Zero lock-in.

Fabric reads your code, deploys each function as its own serverless worker — HTTP, WebSocket, queues, cron, agents, MCP. Eject and run anywhere, anytime.

terminal
$ pikku deploy
Deploying to production...
+ create Worker getUser (HTTP)
+ create Worker createInvoice (Queue)
+ create Worker dailyReport (Cron)
+ create Worker billing-agent (Agent)
+ create Worker mcp-server (MCP, 6 tools)
+ create Queue billing-queue
+ create Cron Mon 09:00
= 23 functions deployed as serverless workers
Deployed. Scales to zero. $0 when idle.

Fabric reads your Pikku metadata, generates a deployment plan, and deploys each function as an independent serverless worker. No config files. No infrastructure decisions.

Self-host (free)

Provision infrastructure per function type
Configure Workers, Queues, Cron manually
Wire up WebSockets and SSE yourself
Set up CI/CD and deploy scripts
Build monitoring and alerting
Manage secrets across environments
Handle version draining manually
Locked to one cloud provider

Fabric ($20/mo)

pikku deploy — every function becomes a serverless worker
HTTP, WebSocket, queues, cron, agents, MCP — all deployed
Per-function metrics, logs, and error tracking
Smart versioning — drains old functions before removing
Terraform-like plan/apply — see exactly what changes
Environments, previews, rollbacks built in
Scales to zero — $0 when idle
Eject anytime — run on any cloud or your own servers

Same Pikku project either way. Fabric deploys it serverless. You can eject and self-host anytime.

"Ever been annoyed at having to write your code different in a Lambda than in an express handler? Pikku fixes that."

Christoph Sitter, CTO @ spot

Pricing

Start free with the open-source framework. Upgrade to Fabric for managed serverless deployment.

Open Source

Free

forever

The full framework. Self-host or deploy anywhere.

All wiring types (HTTP, WS, Queue, Cron, MCP, Agent)
Any runtime (Express, Lambda, Cloudflare, etc.)
pikku deploy CLI with plan/apply
Community support

Fabric

$20/mo

scales to zero, $0 when idle

Serverless deployment platform. Push code, everything deploys.

Everything in Open Source
Per-function serverless workers
Dashboard with metrics, logs, deployments
Smart versioning with auto-drain
Environments, previews, rollbacks
Eject anytime — zero lock-in

Enterprise

Custom

annual license

Deploy to your own cloud. Full control.

Everything in Fabric
BYOK — deploy to your Cloudflare, AWS, or GCP
SSO / SAML + SLAs
Dedicated support engineer

Fabric — coming soon

Get early access to Fabric.

Serverless deployment for Pikku. We'll notify you when it's ready.

No spam. One email when we launch.

Meanwhile, the full framework is available now.