Introduction
Kyln is a full-stack TypeScript framework that runs on Bun. One project, one runtime, one deploy: the same codebase serves your pages, renders them on the server, and answers your API calls. The site you're reading is itself a Kyln app: each page is a server-only route rendered from markdown and baked to static HTML with kyln bake.
What Kyln gives you
The full toolkit, piece by piece:
- File-based routing. Your
src/routes/directory is your router. A file becomes a page; a folder becomes a path segment. Layouts, guards, error, and loading states are conventions, not configuration. - Fine-grained reactivity. Signals drive the UI. Read a signal in your markup and the DOM updates when it changes. There's no virtual DOM, no re-render pass, and no dependency arrays to maintain.
- HTML templates. A tagged template literal,
html, describes your markup. It runs on the server for the first paint and hydrates in the browser. - Dependency injection. Services are plain classes. Declare a scope with a decorator, pull one in with
inject(), and Kyln wires the graph for you. - API routes. The same file-based model serves JSON. Decorate a class with
@apiand its methods with@get,@post, and friends. - A self-contained production build.
kyln bakeproduces adist/you can run with Bun and nothing else.
What's coming
The web framework above is the whole of Kyln v0: a complete, full-stack toolkit for building on Bun today. Everything documented on this site is shipped. From here, Kyln grows with what its users build, and a public channel for feedback and requests is coming soon.
Who Kyln is for
Kyln targets developers who want a single, coherent tool for building and shipping a full-stack app on Bun, with routing, rendering, data, and API in one place, without assembling a stack from separate libraries. It's TypeScript-first and Bun-native by design.
Prerequisites
- Bun 1.3 or newer. Install it from bun.sh. Kyln enforces this floor at install time.
- Familiarity with TypeScript and the basics of HTTP.
Next
Why Kyln? makes the case for the five things Kyln does differently. Or skip straight to Your first app and scaffold a running project in under a minute.