Command Palette

Search for a command to run...

position in category
#7

Declarative JavaScript library for building user interfaces with fine-grained reactivity. Uses reactive primitives instead of a Virtual DOM, so components execute once at render and the DOM updates only when tracked dependencies change.

Sponsored by Cloudflare, Netlify, Vercel, and Builder.io. Draws from React and Knockout: JSX syntax, unidirectional data flow, and hooks-style APIs feel familiar, but components run once and bindings run only when their dependencies change. Consistently ranks at the top of common UI benchmarks for runtime speed and memory use. Small runtime footprint at about 7kb minified and gzipped, MIT licensed.

Key capabilities:

  • Fine-grained reactivity with composable primitives from business logic to JSX, without Virtual DOM diffing
  • JSX-based components with the flexibility of JavaScript expressions
  • Full modern feature set: Context, Suspense, Error Boundaries, Lazy components, streaming SSR, and hydration
  • TypeScript support throughout
  • Integrates with Astro, Vite, and standard bundlers

Useful for dashboards, real-time UIs, and applications where runtime performance and bundle size matter. Developers coming from React recognize the patterns but get more predictable updates and a simpler mental model. Pairs well with Vite for dev tooling and with static site generators like Astro for partial adoption.

GitHub Repositories
188
-5.5%
Trending down this week
Removed in 11 repos