9 个版本 (4 个重大变更)
新版本 0.17.0 | 2024 年 8 月 19 日 |
---|---|
0.15.0 | 2024 年 7 月 26 日 |
0.14.1 | 2024 年 7 月 22 日 |
0.13.3 | 2024 年 6 月 20 日 |
0.0.0 | 2024 年 6 月 17 日 |
#289 in WebSocket
每月 223 次下载
120KB
2.5K SLoC
workflow-rs
WORKFLOW-RS 项目旨在为开发能够在本地平台(桌面和服务器)以及 Web 浏览器、Node.js、NWJS (Node Webkit) 和 Electron 等环境运行的 异步 Rust 应用程序 提供一个统一的环境。
WORKFLOW-RS 由 ASPECTRON 开发团队在 https://aspectron.org 开发
功能
- 平台中立的 crate,能够在裸机(本地)上运行,或提供在浏览器、Node.js 或 NWJS WASM 环境中运行的抽象。
crate
本项目由以下 crate 组成。这些 crate 包含了一组精心挑选的函数和重导出,旨在为 Rust 应用程序提供一个平台中立的环境框架。
workflow-dom
- 提供在运行时注入 JavaScript 功能的 DOM 工具,允许您使用 Rust 在浏览器环境中运行时加载 JavaScript。(这允许您将 JavaScript 模块直接嵌入到您的 Rust crate 中。workflow-websocket
- 基于异步 Rust API 的 WebSocket crate,在本地环境(使用 Tokio)和浏览器中使用原生浏览器 WebSocket 以统一的方式运行。workflow-rpc
- 基于workflow-websocket
的 RPC crate,使用 Borsh 序列化在基于 Workflow-WebSocket 的连接上提供异步二进制数据中继。workflow-core
- Workflow 框架使用的核心工具。这些工具实现了兼容异步 Rust 环境的精选实现,并重导出这些实现,这些实现需要Send
标记。workflow-log
本地、WASM(浏览器)和 BPF 友好的日志功能。workflow-wasm
一组 WASM 辅助模块和实用函数,用于访问 JavaScript 对象属性。workflow-terminal
一种统一终端实现,旨在在本地 shell(操作系统)和浏览器中提供终端用户界面。此实现有助于创建和测试旨在在浏览器和本地平台上运行的 crate。workflow-html
HTML 模板宏,旨在在使用浏览器中的异步 Rust 时提供易于使用的运行时 HTML 模板。此 crate 是 WORKFLOW-UX crate 的基础支柱,该 crate 提供基于 Rust 的 DOM 驱动的 UX 创建。workflow-i18n
用于 Workflow-UX 应用的 i18n 框架。该框架根据短语字典数据库在运行时提供文本的翻译。workflow-store
一个提供简单平台中性文件(数据)存储的 crate,但在运行时根据操作系统解析文件路径,同时支持浏览器本地存储。
此项目的一部分,但目前不在该存储库中
workflow-ux
异步 Rust + HTML Web 组件驱动应用程序用户界面库。
示例
workflow-websocket
、workflow-rpc
和 workflow-terminal
的示例位于 /examples 文件夹中。
贡献
该项目正在积极开发中。任何贡献、想法或反馈都将非常受欢迎。
依赖关系
~15–33MB
~503K SLoC