Introduction

Available as beta — The Vibe Compiler is functional and ready to use, but expect bugs and breaking changes daily until it reaches stability. Use in production at your own risk.

Vibe is designed with a progressive enhancement philosophy. You start with the runtime—no build step required—and when you need production optimizations or prefer compiled components, you can optionally use the compiler.

What is the Vibe Compiler?

The Vibe Compiler is an optional Rust-based build tool that optimizes your Vibe code for production. It handles asset management, component inlining, iteration optimization, and generates hydration manifests for instant page loads.

Your Vibe Runtime code works with the compiler as-is—zero changes required. The same HTML, the same bindings, the same event handlers. Just add a build step when you need production optimization.

Current Features

The compiler provides production-ready features:

Run bunx vibe compile or bunx vibe c to build your project. Configuration lives in package.json under the vibe-compiler section.

Philosophy

The compiler follows the same principles as Vibe Runtime:

You write the same Vibe code whether targeting runtime or compilation. The compiler is a tool for optimization, not a requirement.

Performance

The compiler is built for speed:

Developer Experience

Great developer experience isn't just about comfort—it's about productivity. When a framework gets out of your way, you write less boilerplate and more meaningful code. Fewer abstractions to juggle means faster iteration and clearer intent.

This matters even more in the age of AI-assisted development. LLMs perform best when the codebase is predictable and minimal. A simple, consistent syntax with few moving parts gives AI assistants less to misinterpret and more room to help effectively. Vibe's straightforward patterns—reactive bindings, inline handlers, HTML-first templates—are exactly the kind of code that both humans and machines read fluently.