3个不稳定版本
0.2.1 | 2023年1月25日 |
---|---|
0.2.0 | 2022年11月30日 |
0.1.0 | 2022年11月23日 |
在GUI中排名第696
53KB
149 代码行
一键构建桌面Rust应用程序
使用 Drteeth,你可以选择你最喜欢的异步Web服务器框架和你最喜欢的Web前端工具,并用它们来构建一个桌面应用程序。从程序员的视角来看,一切工作方式与将它们分开成Web服务器和浏览器客户端完全一样。从用户的视角来看,它就像任何其他单个小巧、快速的程序一样。
Drteeth可以使用tokio、async-std或smol作为其异步运行时,与它们兼容的任何Web服务器都将作为你的程序逻辑的框架工作。
Drteeth使用Wry打开目标平台的本地webview,因此不需要将完整Web浏览器捆绑到二进制文件中。Drteeth应用程序小巧、快速且易于携带。
也是一个服务器
使用Drteeth的程序实际上是Web应用程序,因此如果(且仅当)它们配置为在非回环网络接口上打开端口,则可以从远程访问。同样,Drteeth程序的服务器部分可以提供“插件”程序可以与之交互的API。
超级简单
启动Drteeth程序只需要一个函数调用。你告诉它要使用的窗口标题,如何运行异步Web服务器以及要启动的URL。
这是Axum示例中Drteeth的调用。我们在这里省略了Axum服务器本身的设置,但这就是将那个服务器变成桌面应用程序所需的所有内容。
drteeth::launch("Basic Demo", addr, async move {
Server::from_tcp(ear)
.unwrap()
.serve(app.into_make_service())
.with_graceful_shutdown(async {
shutdown_rx.await.ok();
})
.await
.unwrap();
})
.unwrap();
查看示例,了解如何使用Drteeth与Axum、Tide和Trillium一起使用。
详细的API文档可在docs.rs上找到。
搭配良好…
依赖关系
~8–51MB
~734K SLoC