Tauri 1.0 – platforma konkurująca z Electronem w zakresie tworzenia aplikacji niestandardowych

Opublikowano wydanie projektu Tauri 1.0 rozwijającego framework do tworzenia wieloplatformowych aplikacji użytkownika z interfejsem graficznym, zbudowanych z wykorzystaniem technologii webowych. W swej istocie Tauri jest podobna do platformy Electron, ale ma inną architekturę i mniejsze zużycie zasobów. Kod projektu napisany jest w języku Rust i rozpowszechniany na licencji Apache 2.0.

Logika aplikacji jest zdefiniowana w JavaScript, HTML i CSS, ale w przeciwieństwie do aplikacji internetowych, programy oparte na Tauri są dostarczane w postaci samodzielnych plików wykonywalnych, niezależnych od przeglądarki i kompilowanych dla różnych systemów operacyjnych. Platforma udostępnia także narzędzia do organizowania automatycznego dostarczania i instalowania aktualizacji. Takie podejście pozwala programiście nie martwić się o przenoszenie aplikacji na różne platformy i ułatwia aktualizację aplikacji.

Aplikacja może wykorzystywać dowolną platformę internetową do budowy interfejsu, generując jako dane wyjściowe kod HTML, JavaScript i CSS. Frontend, przygotowany w oparciu o technologie webowe, powiązany jest z backendem, który realizuje takie funkcje jak organizacja interakcji użytkownika i wykonanie aplikacji webowej. Do przetwarzania okien na platformie Linux wykorzystywana jest biblioteka GTK (wiążąca GTK 3 Rust), a na macOS i Windows opracowana w ramach projektu biblioteka Tao napisana w Rust.

Do utworzenia interfejsu wykorzystano bibliotekę WRY będącą frameworkiem dla silnika przeglądarki WebKit dla systemu macOS, WebView2 dla systemu Windows oraz WebKitGTK dla systemu Linux. Biblioteka oferuje również zestaw gotowych komponentów do implementacji elementów interfejsu, takich jak menu i paski zadań. W tworzonej aplikacji możesz skorzystać z interfejsu wielookienkowego, zminimalizować do zasobnika systemowego oraz wyświetlić powiadomienia poprzez standardowe interfejsy systemowe.

Pierwsza odsłona platformy umożliwia budowanie aplikacji dla systemów Windows 7/8/10 (.exe, .msi), Linux (.deb, AppImage) oraz macOS (.app, .dmg). Wsparcie dla iOS i Androida jest w fazie rozwoju. Plik wykonywalny może być podpisany cyfrowo. Do montażu i programowania oferowany jest interfejs CLI, dodatek do edytora VS Code oraz zestaw skryptów asemblera dla GitHub (tauri-action). Wtyczki umożliwiają rozbudowę podstawowych komponentów platformy Tauri.

Różnice w stosunku do platformy Electron obejmują znacznie bardziej kompaktowy instalator (3.1 MB w Tauri i 52.1 MB w Electron), niskie zużycie pamięci (180 MB w porównaniu z 462 MB), dużą prędkość uruchamiania (0.39 sekundy w porównaniu z 0.80 sekundy), użycie backendu Rust zamiast Node .js dodatkowe środki bezpieczeństwa i izolacji (na przykład Scoped Filesystem ograniczający dostęp do systemu plików).

Źródło: opennet.ru

Dodaj komentarz