Udgaven af Tauri 1.0-projektet er offentliggjort, som udvikler en ramme til at skabe tværplatforms brugerapplikationer med grafiske brugergrænseflader, bygget med webteknologier. I sit væsen minder Tauri om platformen Electron, men adskiller sig med en anden arkitektur og lavere ressourceforbrug. Projektets kode er skrevet i Rust og distribueres under Apache 2.0-licensen.
Logikken i applikationen er defineret i JavaScript, HTML og CSS, men i modsætning til webapplikationer leveres programmer baseret på Tauri som selvstændige eksekverbare filer, der ikke er knyttet til en browser og kompileres til forskellige operativsystemer. Platformen giver også værktøjer til automatisk levering og installation af opdateringer. Denne tilgang giver udvikleren mulighed for ikke at bekymre sig om portering af applikationen til forskellige platforme og forenkler vedligeholdelsen af applikationen.
I applikationen kan der bruges enhver web-ramme til at opbygge gr interfaces, der genererer HTML, JavaScript og CSS. Den frontend, der er forberedt med webteknologier, forbindes til backend'en, der udfører funktioner som organisering af brugerinteraktion og kørsel af webapplikationen. Til behandling af vinduer på Linux-platformen anvendes GTK-biblioteket (GTK 3 Rust binding), mens der på macOS og Windows anvendes et bibliotek udviklet af projektet, skrevet i Rust.
Til opbygning af gr interfaces anvendes WRY-biblioteket, som er et binding over webbrowser-motoren WebKit for macOS, WebView2 for Windows og WebKitGTK for Linux. Biblioteket tilbyder også et sæt færdige komponenter til implementering af gr interface-elementer som menuer og taskebjælker. I den oprettede applikation kan der bruges en multi-vindue brugergrænseflade, minimisering til systembakken og visning af meddelelser via de indbyggede systemgr interfaces.
Den første udgave af platformen muliggør opbygning af applikationer til Windows 7/8/10 (.exe, .msi), Linux (.deb, AppImage) og macOS (.app, .dmg). Support til iOS og Android er under udvikling. Den eksekverbare fil kan blive underskrevet med en digital signatur. Til opbygning og udvikling tilbydes en CLI-grænseflade, et tillæg til VS Code-editoren og et sæt bygge-scripts til GitHub (tauri-action). Plugins kan anvendes til at udvide de grundlæggende komponenter i Tauri-platformen.
Bland forskellene fra Electron-platformen bemærkes en betydeligt mere kompakt installationsfil (3,1 MB i Tauri og 52,1 MB i Electron), lavt hukommelsesforbrug (180 MB mod 462 MB), høj opstartshastighed (0,39 sekunder mod 0,80 sekunder), anvendelse af Rust som backend i stedet for Node.js, samt yderligere sikkerheds- og isolationsforanstaltninger (for eksempel Scoped Filesystem for at begrænse adgangen til filsystemet).
Kilde: opennet.ru
