|
@@ -78,22 +78,16 @@ For **running** Tauri apps we support the below configurations (these are automa
|
|
|
|
|
|
<sup>1</sup> `appindicator` is only required if system trays are used
|
|
|
|
|
|
-### App Bundles
|
|
|
-
|
|
|
-- [x] App Icons
|
|
|
-- [x] Build on macOS (.app, .dmg)
|
|
|
-- [x] Build on Linux (.deb, AppImage)
|
|
|
-- [x] Build on Windows (.exe, .msi)
|
|
|
-- [x] Copy Buffer
|
|
|
-- [x] Device Notifications (toast)
|
|
|
+### Features
|
|
|
+
|
|
|
+- [x] Desktop Bundler (.app, .dmg, .deb, AppImage, .msi)
|
|
|
- [x] Self Updater
|
|
|
- [x] App Signing
|
|
|
-- [x] Frameless Mode
|
|
|
-- [x] Transparent Mode
|
|
|
-- [x] Multiwindow Mode
|
|
|
-- [x] Tray
|
|
|
-- [ ] deeplink RPC (in progress)
|
|
|
-- [ ] One-Time commands (coming soon)
|
|
|
+- [x] Native Notifications (toast)
|
|
|
+- [x] App Tray
|
|
|
+- [x] Core Plugin System
|
|
|
+- [x] Scoped Filesystem
|
|
|
+- [x] Sidecar
|
|
|
|
|
|
### Security Features
|
|
|
|
|
@@ -106,39 +100,9 @@ For **running** Tauri apps we support the below configurations (these are automa
|
|
|
|
|
|
### Utilities
|
|
|
|
|
|
+- [x] Rust-based CLI
|
|
|
- [x] GH Action for creating binaries for all platforms
|
|
|
- [x] VS Code Extension
|
|
|
-- [x] Tauri Core Plugins
|
|
|
-- [x] Update core dependencies automatically from the command line
|
|
|
-- [x] Rust-based CLI
|
|
|
-
|
|
|
-### Comparison between Tauri and Electron
|
|
|
-
|
|
|
-| Detail | Tauri | Electron |
|
|
|
-| -------------------------- | ------ | -------------------- |
|
|
|
-| Installer Size Linux | 3.1 MB | 52.1 MB |
|
|
|
-| Memory Consumption Linux | 180 MB | 462 MB |
|
|
|
-| Launch Time Linux | 0.39s | 0.80s |
|
|
|
-| Interface Service Provider | WRY | Chromium |
|
|
|
-| Backend Binding | Rust | Node.js (ECMAScript) |
|
|
|
-| Underlying Engine | Rust | V8 (C/C++) |
|
|
|
-| FLOSS | Yes | No |
|
|
|
-| Multithreading | Yes | Yes |
|
|
|
-| Bytecode Delivery | Yes | No |
|
|
|
-| Multiple Windows | Yes | Yes |
|
|
|
-| Auto Updater | Yes | Yes<sup>1</sup> |
|
|
|
-| Custom App Icon | Yes | Yes |
|
|
|
-| Windows Binary | Yes | Yes |
|
|
|
-| macOS Binary | Yes | Yes |
|
|
|
-| Linux Binary | Yes | Yes |
|
|
|
-| iOS Binary | Soon | No |
|
|
|
-| Android Binary | Soon | No |
|
|
|
-| Desktop Tray | Yes | Yes |
|
|
|
-| Sidecar Binaries | Yes | No |
|
|
|
-
|
|
|
-#### Notes
|
|
|
-
|
|
|
-1. Electron has no native auto updater on Linux, but is offered by electron-packager
|
|
|
|
|
|
## Development
|
|
|
|
|
@@ -153,18 +117,6 @@ Tauri is a system composed of a number of moving pieces:
|
|
|
- Netlify-hosted documentation website
|
|
|
- DigitalOcean Meilisearch instance
|
|
|
|
|
|
-### Major Runtimes
|
|
|
-
|
|
|
-- Node.js for running the CLI (deno and pure rust are on the roadmap)
|
|
|
-- Cargo for testing, running the dev service, building binaries and as the runtime harness for the webview
|
|
|
-
|
|
|
-### Major Languages
|
|
|
-
|
|
|
-- Rust for the CLI
|
|
|
-- ECMAScript bindings to the Rust API, written in typescript
|
|
|
-- Rust for bindings, rust side of the API, harnesses
|
|
|
-- Rust plugins to Tauri backend
|
|
|
-
|
|
|
### Operating systems
|
|
|
|
|
|
Tauri core can be developed on Mac, Linux and Windows, but you are encouraged to use the latest possible operating systems and build tools for your OS.
|
|
@@ -186,7 +138,7 @@ Documentation in a polyglot system is a tricky proposition. To this end, we pref
|
|
|
Test all the things! We have a number of test suites, but are always looking to improve our coverage:
|
|
|
|
|
|
- Rust (`cargo test`) => sourced via inline `#[cfg(test)]` declarations
|
|
|
-- TS (`jest`) => via spec files
|
|
|
+- Typescript (`jest`) => via spec files
|
|
|
- Smoke Tests (run on merges to latest)
|
|
|
- eslint, clippy
|
|
|
|