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.