You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Michael Pfaff 61d917a69e
Revert "Use unwrap instead of unwrap_throw so that we get stacktraces"
6 months ago
examples Revert "Use unwrap instead of unwrap_throw so that we get stacktraces" 6 months ago
src Revert "Use unwrap instead of unwrap_throw so that we get stacktraces" 6 months ago
.gitignore Breaking change: dominator now uses wasm-bindgen rather than stdweb 4 years ago
CHANGELOG.md Update CHANGELOG.md 7 months ago
Cargo.toml Add touch and submit events 7 months ago
LICENSE Initial commit 5 years ago
README.md Fixing image for badge 1 year ago

README.md

crates.io docs.rs

Zero-cost ultra-high-performance declarative DOM library using FRP signals for Rust!

Overview

Dominator is one of the fastest DOM frameworks in the world (it is just as fast as Inferno).

It does not use VDOM, instead it uses raw DOM nodes for maximum performance. It is close to the metal and has almost no overhead: everything is inlined to raw DOM operations.

It scales incredibly well even with very large applications, because updates are always O(1) time, no matter how big or deeply nested your application is.

It has a convenient high level declarative API which works similar to React components, but is designed for Rust and FRP signals.

It is generally feature complete, though more convenience methods might be added over time.

It is quite stable: breaking changes are very rare, and are handled with the normal semver system.

I have successfully used Dominator on multiple large applications, and it performed excellently.

Running the examples

Just do yarn and then yarn start (it will take a while to compile the dependencies, please be patient)

Community

We have a Discord server. Feel free to ask any Dominator questions there.