Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/winily/universal-webview
universal-webview is a graphical interface development framework based on system webview similar to Tauri
https://github.com/winily/universal-webview
all-platforms electron tauri
Last synced: 28 days ago
JSON representation
universal-webview is a graphical interface development framework based on system webview similar to Tauri
- Host: GitHub
- URL: https://github.com/winily/universal-webview
- Owner: winily
- Created: 2022-10-31T02:42:54.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2022-11-11T10:07:45.000Z (about 2 years ago)
- Last Synced: 2024-07-30T20:49:49.975Z (6 months ago)
- Topics: all-platforms, electron, tauri
- Language: C++
- Homepage:
- Size: 783 KB
- Stars: 6
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README-CN.md
Awesome Lists containing this project
README
# universal-webview
[中文]|[English]
universal-webview(接下来简称 UW)
是一款基于系统 webview 的图形化界面开发框架灵感来源
Tauri
与它类似,但 Tauri 是基于 rust 开发,UW 是基于 C++ 开发,
因为没有依赖 chromium 所以 UW 要比 Electron 要轻量很多。
不过对应的会产生一点问题就是每个平台的操作系统提供的 WebView
都是不同的标准,在 Web API 上可能会有细微的区别。`tip: 因为我是个人开发者可能支撑度不会很高, 目前仅为实现自己需求的功能为主,如果需要去适配更多功能欢迎 PR 或者提出 issues`
## Support
#### MacOS
- WebView
- Clipboard
- 导航菜单
> 在 uw.config.json 中配置,然后会触发 js 事件通知到 webview
>
> 配置例子
>
> ```json
> {
> "menu": {
> "navigation": [
> {
> "name": "uw",
> "children": [ { "name": "about", "key": "about" } ]
> },
> {
> "name": "Window",
> "children": [
> {
> "name": "Minimize",
> "children": [{
> "name": "第三级",
> "children": [ { "name": "第四级", "key": "a44" } ]
> }]
> }
> },
> ]
> }
> }
> ```
- 资源本地化
> 自定义了协议头,让制定写法的 URL 被内部代码拦截,访问到本地资源
>
> 以下例子为访问到本地的根目录是代码目录下的 resource
> uwfile 是协议名,native 是 host 名 uwfile://native 后面才是真正的 URI
>
> ```html
>
> ```
>
> 默认协议是由 window.open 传入的指定,比如
>
> ```C++
> window.open('uwfile://native/index.html')
> ```
>
> 那么默认路径就是 uwfile://native,如果写相对路径
> 就都会走 uwfile://native
> 除非写绝对路径例如 https://www.baidu.com## TODO
#### MacOS
- fs
#### Windows
- WebView2
- Clipboard
- fs
- 资源本地化