tauri-remote-ui 0.25.0 → 0.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +23 -12
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,22 +1,30 @@
|
|
|
1
1
|
# Tauri Remote UI
|
|
2
2
|
|
|
3
|
-
**Tauri Remote UI** is a plugin that allows you to expose your Tauri application's UI to any web browser, enabling seamless remote interaction and end-to-end testing. The plugin bridges your native app and commercial browsers, letting you use standard web automation tools for testing and debugging—without modifying your app's logic.
|
|
3
|
+
**Tauri Remote UI** is a plugin that allows you to expose your Tauri application's UI to any web browser, enabling seamless remote interaction for development and end-to-end testing. The plugin bridges your native app and commercial browsers, letting you use standard web automation tools for testing and debugging—without modifying your app's logic.
|
|
4
|
+
|
|
5
|
+
## Badges
|
|
6
|
+
 
|
|
7
|
+
|
|
4
8
|
|
|
5
9
|
## Features
|
|
6
10
|
|
|
7
11
|
- **Remote UI Exposure:** Interact with your Tauri app from any browser.
|
|
12
|
+
- **Seamless Development:** Enable Development debug attachment for fronend debugging.
|
|
8
13
|
- **Seamless E2E Testing:** Use existing web automation/testing tools.
|
|
9
14
|
- **Automatic Transport Switching:** IPC for WebView, WebSocket for browsers—handled transparently.
|
|
10
15
|
- **Customizable Security:** Control and secure remote access as needed.
|
|
11
|
-
- **
|
|
12
|
-
- **Future Compatibility:** When [CEF-RS](https://github.com/cef-rs/cef) becomes available, the same E2E tests (e.g., written with Playwright or similar tools that use the Chromium debug port) will work seamlessly in debug mode, ensuring long-term support for modern testing workflows.
|
|
16
|
+
- **Future Compatibility For Test Migration:** When [CEF-RS](https://github.com/cef-rs/cef) becomes available, the same E2E tests (e.g., written with Playwright or similar tools that use the Chromium debug port) will work seamlessly in debug mode, ensuring long-term support for modern testing workflows.
|
|
13
17
|
|
|
14
18
|
## Completed Features
|
|
15
19
|
|
|
16
20
|
### Javascript
|
|
17
21
|
- **api/core** - `invoke`
|
|
18
22
|
- **api/event** - `listen`
|
|
19
|
-
- **api/app**
|
|
23
|
+
- **api/app**
|
|
24
|
+
- `defaultWindowIcon`,`fetchDataStoreIdentifiers`,`getBundleType`,
|
|
25
|
+
- `getIdentifier`,`getName`,`getTauriVersion`,
|
|
26
|
+
- `getVersion`,`hide`,`removeDataStore`,
|
|
27
|
+
- `setDockVisibility`,`setTheme`,`show`
|
|
20
28
|
|
|
21
29
|
### Rust
|
|
22
30
|
- `emit` - Emit method is updated to handle in this plugin.
|
|
@@ -53,22 +61,24 @@ pub fn run() {
|
|
|
53
61
|
```
|
|
54
62
|
3. **Replace Emitter trait**
|
|
55
63
|
```rust
|
|
56
|
-
use tauri::Emitter
|
|
64
|
+
use tauri::Emitter;
|
|
65
|
+
webview_window.emit(data)
|
|
57
66
|
```
|
|
58
67
|
To
|
|
59
68
|
```rust
|
|
60
69
|
use tauri_remote_ui::EmitterExt;
|
|
70
|
+
webview_window.emit(data).await
|
|
61
71
|
```
|
|
62
72
|
4. **Start/Stop Server**
|
|
63
73
|
```rust
|
|
64
|
-
fn enable_server(app: AppHandle) -> String {
|
|
65
|
-
match app.start_remote_ui(RemoteUiConfig::default().set_port(Some(9090))) {
|
|
74
|
+
async fn enable_server(app: AppHandle) -> String {
|
|
75
|
+
match app.start_remote_ui(RemoteUiConfig::default().set_port(Some(9090))).await {
|
|
66
76
|
Ok(()) => format!("Server Started."),
|
|
67
77
|
Err(err) => format!("Server Error {:?}", err),
|
|
68
78
|
}
|
|
69
79
|
}
|
|
70
|
-
fn disable_server(app: AppHandle) -> String {
|
|
71
|
-
match app.stop_remote_ui() {
|
|
80
|
+
async fn disable_server(app: AppHandle) -> String {
|
|
81
|
+
match app.stop_remote_ui().await {
|
|
72
82
|
Ok(()) => format!("Server Stoped"),
|
|
73
83
|
Err(err) => format!("Server Error {:?}", err),
|
|
74
84
|
}
|
|
@@ -85,12 +95,13 @@ To
|
|
|
85
95
|
import { invoke } from "tauri-remote-ui/api/core";
|
|
86
96
|
import { listen } from "tauri-remote-ui/api/event";
|
|
87
97
|
```
|
|
88
|
-
|
|
98
|
+
7. **Development WebSocket Proxy** `/remote_ui_ws` proxy remote_ui url ws to your dev server like vite.
|
|
99
|
+
8. **Enable Source Map and update lauch.json setup in vscode to debug frontend**
|
|
89
100
|
|
|
90
|
-
## Development
|
|
101
|
+
## Plugin Development
|
|
91
102
|
|
|
92
103
|
- Build Rust: `cargo build`
|
|
93
|
-
- Build JS: `pnpm build`
|
|
104
|
+
- Build JS: `cd guest-js && pnpm build`
|
|
94
105
|
- Example app: See `examples/tauri-app/`
|
|
95
106
|
|
|
96
107
|
## License
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "tauri-remote-ui",
|
|
3
3
|
"license": "MIT",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.27.0",
|
|
5
5
|
"author": "DraviaVemal",
|
|
6
6
|
"description": "A Tauri plugin that exposes the application's UI to a web browser, allowing full interaction while the native app continues running. This enables end-to-end UI testing using existing web-based testing tools without requiring modifications to the app itself.",
|
|
7
7
|
"type": "module",
|