## `workflow-core`
Part of the [`workflow-rs`](https://github.com/workflow-rs) application framework.
***
[](https://github.com/workflow-rs/workflow-rs)
[](https://crates.io/crates/workflow-core)
[](https://docs.rs/workflow-core)
Collection of utilities and curated re-exports that are able to operate on native platforms as well as in the WASM32 Web Browser & Node.js environments.
## Features
* `#[derive(Describe)]` derive macro for enums offering conversion of enums to and from strings as well as associating a custom description attribute with each of the enum values.
* `id` module offering a random 64-bit UUID-like base58-encodable identifier representation (useful for DOM element IDs)
* `task` module offering async `spawn()` functionality for async code task execution as well as re-exports following modules:
* `async_std::channel`: offering unbounded and bounded channels from [async_std](https://crates.io/crates/async-std)
* `channel::oneshot`: asias for `async_std::channel::bounded(1)`
* `triggered`: re-export of the [Triggered](https://crates.io/crates/triggered) crate
* async `sleep()` and `yield_now()` functions
* async `yield_executor()` for higher-level suspension of the browser event loop
* `utility` module functions for buffer manipulation