Introduction
palinx (say "PAL-inks") is a full-stack TypeScript framework that runs on Bun. The name is a nod to palindromes, which read the same forwards and backwards. 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 palinx app: each page is a server-only route rendered from markdown and built to static HTML with px build.
What palinx 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 palinx 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.
px buildproduces adist/you can run with Bun and nothing else.
What's coming
The web framework above is the whole of palinx v0: a complete, full-stack toolkit for building on Bun today. Everything documented on this site is shipped. From here, palinx grows with what its users build, and a public channel for feedback and requests is coming soon.
Who palinx is for
palinx 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. palinx enforces this floor at install time.
- Familiarity with TypeScript and the basics of HTTP.
Next
Why palinx? makes the case for the five things palinx does differently. Or skip straight to Your first app and scaffold a running project in under a minute.