Tauri 1.0 - конкуруюча з Electron платформа для створення користувацьких додатків

Опубліковано випуск проекту Tauri 1.0, що розвиває фреймворк для створення багатоплатформних додатків з графічним інтерфейсом, побудованих з використанням web-технологій. За своєю суттю Tauri нагадує платформу Electron, але відрізняється іншою архітектурою та нижчим споживанням ресурсів. Код проекту написаний мовою Rust та поширюється під ліцензією Apache 2.0.

Логіка роботи програми визначається на JavaScript, HTML і CSS, але на відміну від web-додатків, програми на базі Tauri поставляються у вигляді самодостатніх файлів, що виконуються, не прив'язаних до браузеру і компілюються для різних операційних систем. Платформа також надає інструменти для організації автоматичної доставки та встановлення оновлень. Подібний підхід дозволяє розробнику не дбати про портування програми для різних платформ і полегшує підтримку програми в актуальному стані.

У додатку можуть використовуватися будь-які web-фреймворки для побудови інтерфейсу, що видають на виході HTML, JavaScript та CSS. Підготовлений на базі web-технологій фронтенд прив'язується до бекенду, що виконує такі функції, як організація взаємодії з користувачем та виконання web-додатку. Для обробки вікон на платформі Linux використовується бібліотека GTK (біндинг GTK 3 Rust), а в macOS і Windows бібліотека Tao, що розвивається проектом, написана на Rust.

Для формування інтерфейсу застосовується бібліотека WRY, що є обв'язкою над браузерним движком WebKit для macOS, WebView2 для Windows і WebKitGTK для Linux. Бібліотека також пропонує набір готових компонентів для реалізації таких елементів інтерфейсу, як меню та панель завдань. У програмі можна використовувати багатовіконний інтерфейс, згортання в системний лоток і виведення повідомлень через штатні системні інтерфейси.

Перший випуск платформи дозволяє збирати програми для Windows 7/8/10 (.exe, .msi), Linux (.deb, AppImage) та macOS (.app, .dmg). У розробці підтримка iOS та Android. Виконуваний файл може бути засвідчений цифровим підписом. Для складання та розробки пропонується CLI-інтерфейс, додаток до редактора VS Code та набір складальних сценаріїв для GitHub (tauri-action). Для розширення базових компонентів платформи Tauri можна використовувати плагіни.

З відмінностей від платформи Electron відзначається значно компактніший установник (3.1 MB у Tauri і 52.1 MB у Electron), низьке споживання пам'яті (180 MB проти 462 MB), висока швидкість запуску (0.39 секунд проти 0.80 секунд), використання бекенда на Rust замість Node .js, додаткові заходи захисту та ізоляції (наприклад, Scoped Filesystem для обмеження доступу до файлової системи).

Джерело: opennet.ru

Додати коментар або відгук