LINUX.ORG.RU

SixtyFPS становится Slint

 , ,


2

3

Slint — это набор инструментов для разработки графических пользовательских интерфейсов, подходящий как для встраиваемых устройств, так и для настольных приложений. Имеется поддержка Rust, C++ и JavaScript.

Исходный код Slint написан на Rust. На выбор предлагаются лицензия GPLv3 и альтернативные варианты для проприетарных проектов.

Проект основали Olivier Goffart и Simon Hausmann, которые участвовали в разработке KDE и работали в Trolltech над Qt. Разработка началась весной 2020 года под названием SixtyFPS, что символизировало плавные анимации со скоростью 60 кадров в секунду, но под напором советчиков было принято решение переименовать проект в Slint, что можно расшифровать, как Straightforward, Lightweight, Native Toolkit (простой, легковесный, нативный набор инструментов).

Для описания интерфейса используется специально созданный декларативный язык разметки Slint, который частично был вдохновлён Qt QML. Язык является строго типизированным, с удобной для дизайнера системой измерений и хорошим инструментарием. Для написания бизнес-логики может использоваться Rust, C++ или JavaScript. Для этих языков было разработано интуитивное и идиоматичное API. Язык разметки Slint транслируется в код на Rust или C++, что обеспечивает высокую производительность. Также можно загружать .slint-файлы во время выполнения программы с помощью интерпретатора.

Инструментарий включает реализацию LSP для языка разметки Slint, которая интегрируется с различными средами разработки и редакторами и обеспечивает автодополнение, семантическую подсветку синтаксиса и предпросмотр.

Демонстрационные примеры можно запустить в браузере по ссылке https://slint-ui.com/#demos

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

★★★★★

Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 2)

которые участвовали в разработке KDE

Это реклама или предостережение?

thesis ★★★★★
()

Ну и зачем нужно это везде чужеродное говно?

Im_not_a_robot ★★★★★
()

Там по описанию «от нескольких сотен килобайт». Толстовато для эмбедов.

Vit ★★★★★
()
Ответ на: комментарий от Vit

Учитывая, что эмбед у них с линуксом подразумевается, нормально. Условно говоря это для распберри, а не для ардуино.

Legioner ★★★★★
() автор топика
Последнее исправление: Legioner (всего исправлений: 1)
Ответ на: комментарий от Legioner

При беглом взгляде, там везде упоминается GPU rendering и всякие GL бэкэнды, это уже весьма упитанный эмбед )
На фреймбуфере-то оно заводится?

GAMer ★★★★★
()
Ответ на: комментарий от GAMer

Сомневаюсь. Как ты нарисуешь красивый интерфейс на фреймбуфере без gpu, выдерживая 60 fps. Впрочем я точно не знаю.

Legioner ★★★★★
() автор топика
Последнее исправление: Legioner (всего исправлений: 1)
Ответ на: комментарий от Legioner

Похоже на то. Опять забыли любителей садо-мазо :)

Vit ★★★★★
()
Ответ на: комментарий от Vit

Походу под встраиваемостью подразумевается STMки и малиноподобные платы…

AKonia ★★
()

Предыдущее название было хоть и не шибко красивым, зато необычным и запоминающимся. Новое завтра уже забудется. Похоронили проект

anonymous
()
Ответ на: комментарий от ahdenchik

У меня вообще другая расцветка. Наверное просто демка кривая.

InterVi ★★★★
()

А всё потому, что это поделие на практике далеко не всегда может выжать 60 FPS, хехе. Люди жалуются, что подлагивает даже на мощных тачках.

Вообще, удручает, что современные тулкиты уходят от стандартизированных наборов виджетов с предсказуемым между разными приложениями поведением — к абстрактным дизайн-системам, заточенным под создание «фирменных» дизайнов, адаптированных под конкретную задачу. Вполне вписывается в тенденцию ухода от аппаратных клавиатур к огромным плоским тачскринам, на которых можно рисовать хоть чёрта лысого — любые бредовые идеи вида плавающих утюгов и бегающих розеток.

Посему замены матёрым классическим тулкитам, да и даже мастодонту Ext.JS, на горизонте не виднеется. Одни сплошные абстрактные поделия, которые непонятно нафиг нужны, потому что мало что могут предложить по сравнению с рисованием графическими примитивами на голом канвасе.

bodqhrohro_is_back
()

60 ФПС?

Даже в телефонах всё реже встречается этот архаизм

А в линуксе всё ещё пытаются начать разработку настолько «плавного» интерфейса…

anonymous
()

Прикольно, авось взлетит несмотря на суровый NIH :)

zabbal ★★★★★
()
Ответ на: комментарий от anonymous

Предыдущее название было хоть и не шибко красивым, зато необычным и запоминающимся. Новое завтра уже забудется.

Тоже сразу об подумал, кстати.

Im_not_a_robot ★★★★★
()

Проект интересный, но лицензия..

umren ★★★★★
()
Ответ на: комментарий от Legioner

Software Perpetual License 29900€

Distribution License Up to 10000 devices, the price is 1€ / device. Contact us for additional volume discounts.

Любопытно это кто-то покупает или это их влажные мечты?

foror ★★★★★
()

lvgl выглядит симпатичнее.

derlafff ★★★★★
()
Ответ на: комментарий от Vit

И главное - выглядит отлично. Материальный дизайн все-таки хорошая вещь (позволяет даже кривокопытным поням вроде меня нарисовать приятный интерфейс за пару минут).

derlafff ★★★★★
()
Ответ на: комментарий от derlafff

Главное внутрь не заглядывать :). Меня хватило сделать им конвертор шрифтов, сагитировать на ООП и на подмножество CSS. Но по мере избавления от старых лисапедов, их местами заносит.

Что касается готовых скинов - я обычно у дизайнера заказываю, поэтому мне важнее удобство работы.

Vit ★★★★★
()

Где тэги UI/GUI? А нет их, потому что там какое-то говно вместо UI. Неужели до людей не доперло, что eventzaloop в 2022 является плохим фундаментом для построения GUI?

За те годы, которые прошлс с моего последнего участия в разработке опенсорсных RAD инструментов, я пришел к двум выводам:

 — единственный адекватный способ делать RAD/WYSIWYG — делать это в рантайме
 — классическая методология постреоняи GUI проигрывает текстовому интерфейсу, поскольку текстовый интерфейс отталкивается от семантики. GUI же отталкивается от формы, от позиций пикселей, от отдельных кликов мышью, и так далее. По этой причине до сих пор непревзойденным средством автоматизации бизнеса является MS Excel — он стартует с богатой семантики, по мере необходимости уточняя форму. То есть, грубо говоря, нужно иметь возможность скопировать интерфейс выполняющейся софтины с кнопками, полями ввода, картинками, и вставить его в другое окно — фича сама по себе бесполезная, я просто обрисовываю направление и фундаментальные недостатки.

По моим ощущениям, разрабы SixtyFPS просто хотят дальше пердолить Qt. C++ и JS кутя уже поддерживала — вот, Rust добавили. Скоро добавлят фортран и кобол.

byko3y ★★★★
()
Последнее исправление: byko3y (всего исправлений: 1)
Ответ на: комментарий от Vit

Меня хватило сделать им конвертор шрифтов

Это онлайновый? Шпасибо :}

Но по мере избавления от старых лисапедов, их местами заносит.

Ну типичная низкоуровневая разработка. Если честно, то, как оно хорошо и приятно выглядит в текущем состоянии (и то, как легко фигачить интерфейсы, не думая) - чудо и прекрасно.

derlafff ★★★★★
()

ну логично. Кому-то 60fps плавно, а кому-то не очень. Полностью поддерживаю переименование

mittorn ★★★★★
()
Ответ на: комментарий от derlafff

https://github.com/lvgl/lv_font_conv

Вообще это CLI тулза, удобная для скриптов. Но поскольку много пещерного народа, который до сих пор вручную все делает, им онлайн конвертор привернули. По мне - диковато, но т.к. все генерится автоматически, я не парюсь.

Ну типичная низкоуровневая разработка. Если честно, то, как оно хорошо и приятно выглядит в текущем состоянии (и то, как легко фигачить интерфейсы, не думая) - чудо и прекрасно.

Оно только в 8 версии научилось OOP (моими уговорами). Раньше расширение виджета было совсем адом.

Концепцию стилей (кажется с 7 версии), изначально тоже я прописывал (тибрил с CSS & BEM). Но из понесло дергать странные комбинации из CSS и еще бадяжить это QT. Мне такое не по душе, но тратить время чтобы закодить «как надо» больше не могу.

Понимаешь, если смотреть абстрактно, то единственная реально уникальная фича lvgl - многопроходная отрисовка, когда не хватает памяти под полный буфер экрана. Остальное - это паре толковых архитекторов засесть на месяц, ободрать и свести воедино существующие решения. Ну и покодить потом еще пару месяцев.

Vit ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.