Tauri 1.0 , developing a framework for creating multi-platform user applications with a graphic interface built using Web technologies. At its core, Tauri resembles the Electron platform, but is characterized by other architecture and lower resource consumption. The project code is written in Rust and distributed under the license Apache 2.0.
The logic of the application is determined on JavaScript, HTML and CSS , but unlike Web applications, Tauri programs are supplied in the form of self-sufficient executable files that are not tied to a browser and compiled for various operating systems. The platform also provides tools for organizing automatic delivery and installation of updates. This approach allows the developer not to care about porting the application for various platforms and simplifies maintaining the application in the current state.
In the application, any Web-frames can be used to build an interface that issue HTML, JavaScript and CSS output. Prepared on the basis of the front-end web technologies is attached to a backend that performs functions such as the organization of interaction with the user and the implementation of the Web application. To process windows on the Linux platform, the GTK library (binding gtk 3 rust ), and in MacOS and Windows the library developed by the project tao written on rust.
The library is used to form an interface wry , which is a strapping over the WEBKIT browser engine, WebView2 for Windows and Webkitgtk for Linux. The library also offers a set of finished components for the implementation of such interface elements as the menu and taskbar. In the created application, you can use a multi -window interface, turning into a system tray and notification output through standard system interfaces.
The first issue of the platform allows you to collect applications for Windows 7/8/10 (.Exe, .MSI), Linux (.deb, Appymage) and MacOS (.App, .dmg). In the development of iOS and Android support. The executable file can be certified by a digital signature. For assembly and development, a cli-interface is offered, addition to the editor vs code and set of assembly scripts for Github ( tauri-ction ). Tauri can use plugins to expand the basic components of the Tauri platform.
From the differences from the Electron platform, a significantly more compact installer (3.1 MB in Tauri and 52.1 MB in Electron), low memory consumption (180 MB versus 462 MB), high start speed (0.39 seconds versus 0.80 seconds), the use of the basanda on the use of the Electron. Rust instead of node.js, additional measures of protection and isolation (for example,
Scoped Filesystem to limit access to the file system).