Skip to main content

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.

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.