Skip to content

Why Kyrin?

Kyrin is a TypeScript framework for Bun. It's designed to help you ship fast without sacrificing type safety or flexibility.

The Problem

Setting up a new backend project shouldn't take hours. You don't want to wire up routers, validators, and configs from scratch every time. But you also don't want a bloated framework that forces you into patterns you don't need.

What Kyrin Does

Kyrin gives you a solid foundation with sensible defaults. Everything just works out of the box, but nothing is locked in. Use what you need, ignore what you don't.

typescript
import { Kyrin, cors } from "kyrin";

const app = new Kyrin();

app.get("/", () => ({ message: "Hello Kyrin!" }));
app.listen(3000);

That's it. No boilerplate, no ceremony.

Type Safety Without the Hassle

Types flow through your entire app automatically. Request params, body, response — all typed. No more as any or runtime surprises.

Built for Bun

Kyrin is optimized for Bun from day one. Fast startup, fast requests, fast everything.

What's Next?

Head over to Core Concepts to see how it all works.

Released under the MIT License.