SixtyFPS Turns into Slint

SixtyFPS Turns into Slint

We’re renaming SixtyFPS to Slint



Why swap?

In Spring 2020, we started SixtyFPS
to win a new GUI framework for Desktop and Embedded devices.

In nearly two years we possess now made thirteen releases, obtained many customers, constructed a community of contributors, signed about a customers, and picked up 3k GitHub Stars 🤣.

We selected the title SixtyFPS because we would possess preferred to recount our goal of reaching fluid animations continuously. Here is continually associated
with a refresh price of 60 frames per 2d.

Many onlookers bear this title actually: Every time our carrying out exhibits
up on social media, we rep comments about our title: that it appears to be like out of date desirous about that
on the 2d screens assuredly bustle at increased refresh charges.

We belief to be changing the title and made up our minds to keep up a correspondence about this in the originate source community to rep suggestions.
We opened a dialogue on GitHub and obtained many
generous suggestions.

@karoofish urged slant, which grew to change into the very top voted advice
and we cherished it plenty. We ran this with some company, at the side of some native audio system, and a few urged that it would possess a rather
negative that strategy in some context. All we would possess preferred change into as soon as rather iteration.

Our new title derives from Straightforward, Lightweight, Native Toolkit,
which might be our assemble targets. Slint.

A broad thank you to every person who obtained alive to, especially @karoofish!

Screenshot of Printer Demo

Screenshot of our printer demo

What’s Slint?

While you possess by no strategy heard of SixtyFPS Slint ahead of, it be a GUI toolkit implemented
in the Rust programming language.

At its core is the declarative Slint mark-up language, which represents the total particular person interface.
The Slint language took some inspiration from Qt’s QML. This change into as soon as natural,
since we were coming from that ecosystem. We made up our minds to win it with solid typing from the ground up, a
dressmaker-edifying unit machine and entire tooling reinforce. Write the particular person interface
in Slint markup and the enterprise logic in a “exact” programming language.

It’s possible you’ll also utilize Slint with a range of programming languages, love Rust, C++, and JavaScript. Now we possess designed our APIs for those languages
to be intuitive and idiomatic, no longer correct some robotically generated bindings. Now we possess designed the toolkit so that we are able so as to add Python, Shuffle
or a range of languages to the mix.

Our own compiler parses the Slint language and compiles straight to native Rust or C++ code, with
native efficiency and ambiance edifying memory structure. It’s possible you’ll also additionally load .slint files dynamically at bustle-time
with our bustle-time interpreter.

Our tooling incorporates a Language Server Protocol implementation that integrates into varied IDEs and editors. It
affords auto completion, semantic syntax-highlighting, and a cool are living-preview, as demonstrated in the following
video clip.

The IDE integration in Visible Studio Code in bolt

Slint model 0.2.0

The motive of the 0.2.0 start is to judge this title swap.

We also took the opportunity to win some predominant adjustments to our API, that we possess now
light since the 0.1.0 start final year thanks to your feedback.

Here is easy strategies to upgrade your application:

  • Be definite you meet our up up to now tooling requirements: Rust 1.56 or later. Have to you’re the utilize of C++, a compiler that supports C++ 20.
  • Have to you’re the utilize of Rust, swap your Cargo.toml to rely on slint in its effect of sixtyfps. Have to you’re the utilize of C++, swap your CMakeLists.txt to rep the Slint kit and link towards the Slint::Slint goal.
  • To your application code, rename all occurrences of the sixtyfps module/namespace with slint. For API adjustments, peep our Rust (+ Interpreter) and C++ migration guides.

OpenGL Underlay Screenshot

OpenGL Underlay instance

On this start we also threw in a new feature:
It’s possible you’ll also now integrate custom OpenGL code ahead of or after the rendering of a Slint scene.
The new OpenGL Underlay instance exhibits
guidelines on how to make that in Rust and C++.

New web residing and assemble

It’s possible you’ll possess noticed that the residing of our web residing, the assemble, and the brand possess changed. We took the opportunity to refresh our branding, with support from Benedikt Wisbauer. We also moved the organization on GitHub.

Yow will stumble on our new GitHub repository right here:

We hope you might additionally connect with our new title, branding, and our newest start. 🚀❤️

Have to you are exclusive about our former web residing, it be accrued available on
the gather archive.

Read More

Ava Chan

Ava Chan

I'm a researcher at Utokyo :) and a big fan of Ava Max