Tauri 1.0 is a platform to compete with Electron for creating custom applications.

The release of the Tauri 1.0 project has been published, which develops a framework for creating multi-platform user applications with a graphical interface built using web technologies. At its core, Tauri resembles the Electron platform, but differs in a different architecture and lower resource consumption. The project code is written in Rust and distributed under the Apache 2.0 license.

The logic of the application is defined in JavaScript, HTML and CSS, but unlike web applications, Tauri-based programs are delivered as self-contained executable files that are not tied to the browser and compiled for various operating systems. The platform also provides tools for automatic delivery and installation of updates. This approach allows the developer not to worry about porting the application for different platforms and makes it easier to keep the application up to date.

The application can use any web-frameworks to build the interface, producing HTML, JavaScript and CSS as output. A web-based frontend is tied to a backend that performs functions such as organizing user interaction and executing a web application. To process windows on the Linux platform, the GTK library (GTK 3 Rust binding) is used, and on macOS and Windows, the Tao library developed by the project, written in Rust.

To form the interface, the WRY library is used, which is a binding over the WebKit browser engine for macOS, WebView2 for Windows and WebKitGTK for Linux. The library also offers a set of ready-made components for implementing interface elements such as menus and taskbars. In the created application, you can use a multi-window interface, minimize to the system tray and display notifications through standard system interfaces.

The first release of the platform allows you to build applications for Windows 7/8/10 (.exe, .msi), Linux (.deb, AppImage) and macOS (.app, .dmg). Support for iOS and Android is under development. The executable file can be digitally signed. For assembly and development, a CLI interface, an addition to the VS Code editor, and a set of assembly scripts for GitHub (tauri-action) are offered. Plugins can be used to extend the basic components of the Tauri platform.

Differences from the Electron platform include a much more compact installer (3.1 MB in Tauri and 52.1 MB in Electron), low memory consumption (180 MB versus 462 MB), high startup speed (0.39 seconds versus 0.80 seconds), use of a Rust backend instead of Node .js, additional protection and isolation measures (for example, Scoped Filesystem to restrict access to the file system).

Source: opennet.ru

Add a comment