LINUXTALKS.CO

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

 

L


0

0

Опубликован
выпуск проекта 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 для
ограничения доступа к файловой системе).

>>> Подробности

★★☆☆☆

Целевая аудитория разработчиков таких вот поделок на вебне какая?

cetjs2    
★★★★★★★★★★★
Linux / Chrome

Через 1,5 года появится новый фреймворк с целью конкурировать с вот этим вот. Фигня короче. Лучше бы под линуксы нормальную ГУИ библиотеку написали новую, Qt болваны что от них ждать вообще непонятно всё раздроблено и впереди только мрак, GTK+ со скрипом ещё можно сказать что норм, но чем дальше тем хуже разработчики (или их начальники) кукушкой уже давно поехали и мчатся на всех парах по уже всем знакомой линии, ну и GTK+ по факту считай уже принадлежит IBM. Tcl унесите. Просветлённые, застряли в прошлом. Nuklear и горстка подобных имеют шанс, но у них своя область применения. Нужен новый GTK, но уже нормальный.

LINUXTALKS-CO    
★★★
Linux / Firefox
Ответ на: комментарий от LINUXTALKS-CO

Самое смешное, что я до сих пор пишу GUI на Swing, хоть он уже и не развивается давным давно. ЧСХ, всё работает и никаких проблем с переносимостью.

cocucka    
★★★★★★★★★★★
Linux / Firefox
Ответ на: комментарий от cocucka

А как начать писать на сванге? жабу знаю.

cetjs2    
★★★★★★★★★★★
Linux / Chrome
Ответ на: комментарий от cocucka

Плюс джавы конечно. Написанное под неё, но не развивающееся это просто стабилизированное, поэтому и интерпрайзно. Если выкрутасов не делать написанное прадедами по идее должно заработать с полтычка. Не, ну в целом написать ПО с гуем по вкусу не проблема, если приложение простое то даже можно с нуля свои пару тройку элементов интерфейса забабахать, сделать рендер всего этого и всё. Или взять что-то готовое. Но хочется чего-то эмм просто стабильного. Пусть простого, но умеющего дружить как с древностью так и с новым, чего-то самостоятельного. Современный гуй на линуксах идёт по пути эволюции и развивает каждый своё в рамках возможностей платформы ложа большой БОЛТ на всё что было в прошлом. От этого сейчас у меня три разных приложения на GTK+ в системе выглядят и функционируют по разному причём так будто на разных тулкитах написаны. Вот лично мне по сути хватило бы например Nuklear или подобного, но останавливает только одно, а именно отсуцтвие поддержки «тем» родной системы в автоматическом режиме, корое вариантов гуя много, но они не умеют мимикрировать под что-то иное. И всё бы ладно если бы например поддержка тем вообще существовала, сейчас темы в гноме это просто хак css стили никогда не предозначались для тем, но так уж сложилось что это начали использовать и развилось всё самотёком, культя и прочеи так же (хотя там получще вроде и есть нормальная поддерджка тем) ну так вот всё бы ладно, но они же дружно ломают всё это переодически и что-то внешнее пытаясь мимикрировать под системное тоже кирдыкается, так и получается кашка манная в перемешку с гречкой, просом и овсом и прочим, как каша «дружба» которую готовят каждый раз по разному и почти всегда неудачно.

LINUXTALKS-CO    
★★★
Linux / Firefox

А почему wxWidgets не выстрелило, комрады? Вроде перспективная штука была. Плюсы, все дела.

ashot    
★★★★★★
Android / Chrome
Ответ на: комментарий от ashot

Плюсы

Зачем тогда оно, если уже есть Qt?

alexferman    
★★★★★
Linux / Firefox
Ограничение на отправку комментариев: только для зарегистрированных пользователей, score>=90