35 个版本 (13 个破坏性更新)

新增 0.17.0 2024 年 8 月 19 日
0.15.0 2024 年 7 月 26 日
0.11.0 2024 年 2 月 25 日
0.10.2 2023 年 12 月 24 日
0.3.12 2023 年 3 月 11 日

#1485 in 过程宏

Download history 5/week @ 2024-05-03 7/week @ 2024-05-10 15/week @ 2024-05-17 13/week @ 2024-05-24 12/week @ 2024-05-31 8/week @ 2024-06-07 472/week @ 2024-06-14 100/week @ 2024-06-21 4/week @ 2024-06-28 127/week @ 2024-07-05 20/week @ 2024-07-12 94/week @ 2024-07-19 244/week @ 2024-07-26 16/week @ 2024-08-02 249/week @ 2024-08-16

每月 515 次下载
用于 2 个 Crates(通过 workflow-html

MIT/Apache

32KB
701

workflow-rs


github license

WORKFLOW-RS 项目旨在为开发能够在 原生平台(桌面和服务器)以及 Web 浏览器Node.jsNWJS (Node Webkit)Electron 等环境中的 异步 Rust 应用程序 提供一个统一的开发环境。

WORKFLOW-RS 由 ASPECTRON 开发团队在 https://aspectron.org 开发

功能

  • 平台中立 Crates,能够在裸机(原生)以及浏览器、Node.js 或 NWJS WASM 环境中运行或提供运行时的抽象。

Crates

本项目包括以下 Crates。这些 Crates 包含一个精心挑选的函数和重导出集合,旨在为 Rust 应用程序提供一个平台中立的环境框架。

  • workflow-dom - 提供运行时 JavaScript 注入功能的 DOM 工具,允许您使用 Rust 在运行时将 JavaScript 加载到浏览器环境中。 (这允许您直接将 JavaScript 模块嵌入到您的 Rust Crates 中。
  • workflow-websocket - 基于 workflow-websocket 的 WebSocket Crates,具有异步 Rust API,在原生环境(使用 Tokio)和浏览器中使用原生浏览器 WebSocket 一致地运行。
  • workflow-rpc - 基于 workflow-websocket 的 RPC Crates,提供使用 Borsh 序列化在基于 Workflow-WebSocket 的连接上异步二进制数据中继。
  • workflow-core - Workflow框架使用的核心工具。这些工具实现了与异步Rust环境兼容的精选实现,并重新导出,需要Send标记。
  • workflow-log 本地、WASM(浏览器)和BPF友好的日志功能。
  • workflow-wasm 一组WASM辅助模块和实用函数,用于访问JavaScript对象属性。
  • workflow-terminal 一个统一的终端实现,旨在在原生shell(OS)以及浏览器中提供终端用户界面。此实现有助于创建和测试旨在在浏览器和原生平台上运行的应用程序。
  • workflow-html 用于在浏览器中使用异步Rust时对DOM提供简单易用的运行时HTML模板的宏。此crate是WORKFLOW-UX crate的基础,该crate提供基于Rust的DOM驱动UX创建。
  • workflow-i18n Workflow-UX应用程序的i18n框架。此框架提供基于短语词典数据库的运行时文本翻译。
  • workflow-store 提供简单平台中立文件(数据)存储的crate,但根据操作系统在运行时解析文件路径,并支持浏览器本地存储。

该项目的一部分,但目前在存储库之外

  • workflow-ux 异步Rust + HTML Web Component驱动的应用程序用户界面库。

示例

workflow-websocketworkflow-rpcworkflow-terminal的示例在/examples文件夹中可用。


贡献

此项目正在积极开发中。任何贡献、想法或反馈都将非常欢迎。

依赖关系

~2MB
~46K SLoC