Vision
Pikku is built on three core visions that shape how you build backends. Like a chameleon adapting to its environment, Pikku keeps your logic intact while flexing to fit wherever you need to run.
Function-First: Write Once, Call Anywhere
Your business logic shouldn't care how it's invoked. Write it once as a typed function. Call it from anywhere:
- HTTP - REST APIs with OpenAPI
- WebSocket - Real-time bidirectional communication
- Server-Sent Events - Progressive enhancement, stream updates
- Queue - Background jobs and async processing
- Cron - Scheduled tasks
- RPC - Internal function-to-function calls
- MCP - AI agent tools (Claude, GPT, and more)
- CLI - Command-line interfaces
No code duplication. No logic fragmentation. Just functions.
This flexibility means you can build for traditional servers and serverless platforms using the same codebase - without the headaches of mixing paradigms.
Current limitations: File uploads and non-JSON content types aren't supported yet.
Deploy Anywhere: Zero Lock-In
Pick your runtime. Change it tomorrow. Your code stays the same.
- Traditional Servers - Express, Fastify, uWS
- Serverless - AWS Lambda, Azure Functions, Cloudflare Workers
- AI Agents - MCP for Claude, GPT, and other models
- Full-Stack Frameworks - Next.js with App or Pages Router
Start with a monolith. Scale to microservices. Optimize individual functions. All without rewriting a single line of business logic.
No framework lock-in. No vendor lock-in. Just adaptability.
Developer Experience: Less Boilerplate, More Building
Your functions receive:
- Services (database, cache, logger)
- Data (validated automatically)
- User sessions
They return:
- Data (or streaming updates)
- Errors
That's it. No HTTP headers. No status codes. No protocol details. No decorators. Just pure TypeScript.
TypeScript Does the Heavy Lifting
Pikku uses your types to automate everything:
- Runtime Validation - JSON schemas generated from TypeScript types (no extra libraries)
- Type-Safe Clients - Auto-generated HTTP fetch, WebSocket, and RPC clients
- OpenAPI Docs - Complete API documentation from your functions
- Smart Tree-Shaking - Bundle only what you deploy
- Next.js Integration - Typed wrappers for seamless full-stack development
- Session Management - Built-in auth and permissions across all protocols
You write functions. Pikku handles the rest. No decorators, no runtime reflection, no magic—just static analysis of plain TypeScript.