Brisa is an experimental, MIT-licensed TypeScript web framework that bundles JSX, server and web components, server actions, streaming SSR, and signals into one toolchain, aimed at developers who want to build and ship a site without assembling a stack of separate libraries.
What it is
Brisa is a web framework written in TypeScript and published on npm as the brisa package. It is described in its own README as "an experimental web framework inspired by the others, taking the best of each one," and it carries the topic tags jsx, server-components, server-rendering, signals, streaming, static-site-generator, and web-components. It sits in the JavaScript and TypeScript ecosystem and covers the ground normally split between a build tool, a routing layer, a rendering engine, and a component runtime.
The concrete problem it solves is the assembly work of a modern web project. Instead of wiring a bundler, a router, a rendering strategy, an i18n layer, and a realtime transport together by hand, Brisa ships them as one framework with one configuration surface. It replaces that collection of separate dependencies with a single package whose default output adds nothing to the bundle: 0 bytes by default, 2 kB when server actions are used for RPC, and 3 kB when web components are needed.
Key capabilities
- JSX and TypeScript support alongside server components, web components, and layouts.
- Server actions with optimistic updates, so mutations and their pending state are handled without a separate client data layer.
- Server-side rendering, streaming, and suspense for progressively delivered pages.
- Signals as the reactive state primitive.
- Websockets and middleware built into the framework rather than added on.
- i18n support covering both text translation and routing, loading only the translations a request consumes.
- Output retargeting: the same project can be changed from server to static, or to a desktop, Android, or iOS app, with a single configuration command.
Who uses it and how
- Developers experimenting with server components and streaming who want those ideas in one place rather than spread across multiple packages.
- Contributors taking part in Hacktoberfest, since the repository carries the
hacktoberfest topic.
- Teams building multilingual sites that need translation loading scoped to the routes actually visited.
- Projects that expect to start as a web deployment and later target static output or a packaged app, using the configuration command to change the build target.
- Small groups prototyping against the docs on brisa.build, with the Discord channel and the 1.0 roadmap issue used for feedback.
Getting started
The README gives a single command: bun create brisa@latest. Full setup steps live in the quick-start section of the documentation at brisa.build.
How it compares
No list of paid products this project replaces is provided, and the facts name no comparable frameworks by name beyond the README's note that Brisa is inspired by others. On the evidence available, it stands alone in this registry.
When to use it — and when not to
Use Brisa when the goal is experimentation, feedback, or contributing to the framework, which is exactly what its README asks for. Do not use it for production work: the project states that the 0.x versions are experimental and that production use is not recommended until 1.0, so anyone needing stability should wait for that release. The repository also shows 55 open issues, which is consistent with an early-stage project where the surface area is still moving.