snabbdom/snabbdom
A virtual DOM library with focus on simplicity, modularity, powerful features and performance. observed · 2026-08-28
Health v2 · maintenance only
80/100
- Activity 88
- Release rhythm 57
- Longevity 100
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-03. Adoption (stars, forks) is never an input.
- gap_med: 259
- age_days: 4134
- days_rel: 77
- days_push: 77
- n_releases_24m: 2
Adoption not part of the score
12397 stars · 1112 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-29, confidence not recorded
Snabbdom is a virtual DOM library for JavaScript/TypeScript with a tiny (~200 SLOC) modular core and extensible module system. It provides fast diffing and patching of virtual nodes with hooks, SVG support, event listeners, and animation modules.
Use cases
- build a custom frontend framework with a fast virtual DOM
- efficiently patch the DOM from application state changes
- add reactive view rendering to an existing app without a full framework
- implement a component library with fine-grained DOM update control
- integrate virtual DOM rendering with an FRP or state management library
- render SVG elements declaratively
When to choose
- you want a minimal, performant virtual DOM core you can build on
- you need modular extensibility via hooks and custom modules
- bundle size and patch performance are critical
- you're building your own framework or rendering layer
When to avoid
- you want a batteries-included framework with routing, state, and components out of the box
- you prefer declarative templates/JSX tooling maintained for you
- your team needs a large ecosystem and community tooling
Facets
library · maturity stable
frontend-framework ui-components templating web-development frontend browser cross-platform virtual-dom vdom diffing patching typescript modular nodejs
2 sources
- readme: https://github.com/snabbdom/snabbdom · fetched 2026-08-28 · a1dd1f2c7d03
- registry_npm: https://registry.npmjs.org/snabbdom · fetched 2026-08-29 · c72dd6f6c619
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| snabbdom/snabbdom | main | 80 |
For agents
markdown · JSON · MCP: product_card(name="snabbdom/snabbdom")
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem