ENGLISH DOC | Welcome to Dweb Browser discord
dweb-browser 是一个遵循 Dweb 标准构建起来的浏览器平台,并将浏览器的能力、以及浏览器相关的系统原生系统能力通过各种 dweb 模块暴露出来。目前我们实现了 Android、iOS、MacOS、Windows 这些主流平台的支持。
我们将安装到 Dweb Browser
中的 app 定义为dweb app
。通过简单的一个配置文件,就可以将您的 web app
快速的安装到各个平台当中。
如何开始开发:流程。
在 Dweb Browser
中,我们强调模块的概念,所有的一切功能都是dweb
模块。
一个 dweb app
可以小到是一个简单功能模块,去专心为分布式网络提供一些能力,也就是说,你本地调用的模块,可以是远程模块。
模块化的概念将在可编程后端才会有更近一步的体现,模块概念对前端开发者弱化,前端开发者只需要什么功能就简单的调用什么插件。 提供多梯度的开发需求。
模块包含 std.dweb
,sys.dweb
,browser.dweb
,*.dweb
这些标准。
全平台标准模块,提供的接口需要在各个平台保持一致性。并且需要获得社区认可。
目前有以下三个:
file.std.dweb
: 文件操作标准模块,提供操作文件夹的标准能力。http.std.dweb
: http 服务标准模块。dns.std.dweb
: dns 转发查找模块。
系统级模块,提供一些系统级能力,各个平台的能力可能不一致。 当一些模块在全平台接口保持一致,并且获得社区认可之后,将升级为全平台标准模块。
一些例子:
haptics.sys.dweb
: 震动模块,提供震动能力,只在移动端实现。keychain.sys.dweb
: 密钥存储模块。geolocation.sys.dweb
: 获取经纬度的模块。- ...
浏览器级模块,实现一些浏览器级的功能。
一些例子:
download.browser.dweb
: 下载模块,提供下载能力。jmm.browser.dweb
: 它是一个动态 dweb 模块管理器,基于此可以实现类似 PWA 的应用功能。js.browser.dweb
: 它是一个 javascript-runtime,使用的是 WebWorker 作为底层实现。因此 WebWorker 中的各种标准都可以开箱即用。- ...
plaoc 是基于 Dweb Browser
平台的一个对标 Cordova、Capacitor、Tauri 的“跨平台 Web 应用”开发工具包。
提供全链路的工具,并且能够快速的调用各个平台和系统的能力。
包含打包工具@plaoc/cli
,前端插件@plaoc/plugins
。
@plaoc/cli 是 dweb app
开发并打包应用到 Dweb Browser
的命令行工具。
具体文档查看:cli 文档
@plaoc/plugins 能赋予 web 开发者,直接调用各个平台系统 API 的能力。
具体文档查看:plugins 文档
- 查看: 快速开始
- 建议阅读: 完整的开发环境搭建的文档
- 初始化资源包
deno task init
需要编译Dweb Browser
静态资源文件。
deno task dev
deno task plaoc:watch
项目内包含前后端示例项目,位于examples.
可运行如下命令查看:
plaoc:demo
plaoc:demo:serve
项目的一些系统级 API 和一些服务采用 rust-uniffi进行调用.
具体查看项目 dweb_browser_libs.