Awesome
vidom
<!---[![Sauce Test Status](https://saucelabs.com/browser-matrix/dfilatov81.svg)](https://saucelabs.com/u/dfilatov81)/]-->Vidom is just a library to build UI. It's highly inspired from React and based on the same ideas. Its main goal is to provide as fast as possible lightweight implementation with API similar to React.
Main features
- Fast virtual DOM builder and patcher under the hood
- Update batching and synchronization with browsers rendering lifecycle by default
- Fast server-side rendering with ability to reuse existing DOM in the browsers also known as isomorphism
- Easy and clear way to subscribe to DOM Events
- API to build your own high-level components
- Namespaces support (e.g., SVG, MathML)
- Ability to render multiple components without unwanted DOM wrappers
- No extra markup in the result HTML
- JSX support via babel plugin
- TypeScript support
- Small footprint, 9KB after gzip
- Zero dependencies
Benchmarks
- repaint rate challenge
- vdom-benchmark
- uibench
- server-side rendering (nodejs 8.8.1)
mean time ops/sec
vidom v0.9.23 0.505ms 1981
inferno v3.10.1 0.511ms 1958
preact v8.2.6 1.414ms 707
react v16.0.0 1.479ms 676
vue v2.5.2 8.883ms 113
Playground
Try live playground to play with Vidom in your browser.
Documentation
- Getting started
- Tutorial
- Top-level API
- DOM Events API
- Component properties
- Component lifecycle
- Component methods
- Function component
- JSX
- Isomorphism
- FAQ
- Changelog
Tools
- Vidom inspector developer tool which helps debug vidom-based applications
Addons
- vidom-css-animation-group API for "appearance", "entering" and "leaving" animation via CSS transitions and animation
- vidom-ui Set of basic UI components
- vidom-redux Redux bindings
Examples
Thanks
- cdnjs for library is avalaible on CDN.