@kaapi/kaapi



Kaapi is a
modern, extensible backend framework built on
Hapi, offering a
TypeScript-first design,
plugin-based architecture with
messaging,
authentication, and
automatic API documentation baked in.
---
š Features
- ā”
Simple Setup ā Minimal boilerplate, Hapi-compatible routing
- š
Auth Designs ā Built-in Basic, Bearer, and API Key authentication
- š§±
Plugins System ā Extend Kaapi easily with
app.extend()
- š
API Docs ā Swagger & Postman generation out of the box
- š”
Messaging Abstraction ā Kafka, MQTT, AMQP, or custom
- šŖµ
Powerful Logging ā Winston-based or custom logger support
- š§©
Type Safe ā Fully typed with first-class TypeScript support
---
š§° Quick Start
``
bash
npm install @kaapi/kaapi
`
`
ts
import { Kaapi } from '@kaapi/kaapi';
const app = new Kaapi({ port: 3000, host: 'localhost' });
app.route({ method: 'GET', path: '/' }, () => 'Hello Kaapi!');
await app.listen();
app.log.info(š Server running at http://localhost:3000
);
`
š§ Visit: http://localhost:3000
---
š Documentation
š Full documentation available here:
š Kaapi Wiki ā
---
š” Example Features
* Auth: BearerAuthDesign
, BasicAuthDesign
, APIKeyAuthDesign
* Docs: /docs/api
(Swagger UI), /docs/api/schema?format=postman
* Messaging: Abstract interface for Kafka, MQTT, etc.
* Extend: Custom plugins via KaapiPlugin` interface
*
Logger: Built-in Winston logger or bring your own
---
š§ Why Kaapi?
Kaapi focuses on
clarity,
composability, and
developer productivity:
> One framework, many patterns ā REST, messaging, auth, docs ā all in TypeScript.
---