Welcome to Slint C++’s documentation!
Slint is a toolkit to efficiently develop fluid graphical user interfaces for any display: embedded devices and desktop applications. Slint C++ is the C++ API to interact with a Slint UI from C++.
The .slint Markup Language
Slint comes with a markup language that is specifically designed for user interfaces. This language provides a powerful way to describe graphical elements, their placement, and the flow of data through the different states. It is a familiar syntax to describe the hierarchy of elements and property bindings. Here’s the obligatory “Hello World”:
export component HelloWorld inherits Window {
width: 400px;
height: 400px;
Text {
y: parent.width / 2;
x: parent.x + 200px;
text: "Hello, world";
color: blue;
}
}
Check out the language reference for more details.
Architecture
An application is composed of the business logic written in C++ and the .slint user interface design markup, which is compiled to native code.
Developing
You can create and edit .slint files using our Slint Visual Studio Code Extension, which features syntax highlighting and live design preview.
For a quick edit and preview cycle, you can also use the slint-viewer
command line tool, which can be installed using cargo install slint-viewer
,
if you have Cargo installed.
In the next section you will learn how to install the Slint C++ library and the CMake build system integration.