Crates.io | plaster |
lib.rs | plaster |
version | 0.2.5 |
source | src |
created_at | 2019-02-01 01:41:38.526256 |
updated_at | 2019-07-13 00:54:22.098754 |
description | A wasm-bindgen framework for making client-side single-page apps |
homepage | https://github.com/carlosdp/plaster |
repository | https://github.com/carlosdp/plaster |
max_upload_size | |
id | 111909 |
size | 149,771 |
plaster is a modern Rust framework for creating frontend apps with WebAssembly.
It was orginally forked from yew.
yew is a great framework and I've found a ton of great use from it on my projects. However, it was built on-top of stdweb, which is also great, but wasm-bindgen and the associated crates such as web_sys are pretty much the "annointed" libraries for low-level access to Web/JS APIs in WebAssembly. They are designed to more or less match the eventual host-level bindings to these APIs directly from WebAssembly and are generated from WebIDL definitions, making their upkeep much easier and reducing the time to access new APIs as they become standardized and available.
Additionally, yew takes an opinionated stance to concurrency and parallelism with its actor model. I'm not personally a huge fan of actors, and I'd prefer to just use Futures and libraries that build on top of that primitive, so I'd like the framework to easily support that more idiomatic model. wasm-bindgen-futures makes this nice and easy to do with the browser's built-in Promise support.
In a nutshell:
Services
to try and provide some higher-level Rust primitives for some commmon JS/Web
patterns. I think this is out of the library's scope and would like to thin it out by removing this concept
and instead making interoperation between Promise-based Futures and Component updates easy.