Published toolkit for creating graphical interfaces Slint 1.0

The first major release of the Slint GUI toolkit has been published, summarizing three years of work on the project. Version 1.0 is positioned as ready to start using in working projects. The toolkit is written in Rust and is licensed under the GPLv3 or commercial license (for use in proprietary products without opening the code). The toolkit can be used both to create graphical applications for stationary systems and to develop interfaces for embedded devices. The project is being developed by Olivier Goffart and Simon Hausmann, former KDE developers who worked on Qt at Trolltech.

The main goals of the project are low resource consumption, the ability to work with screens of any size, providing a development process that is convenient for both programmers and designers, and ensuring portability between different platforms. For example, Slint-based applications can run on a Raspberry Pi Pico board equipped with an ARM Cortex-M0+ microcontroller and 264 KB of RAM. Of the platforms, Linux, Windows, macOS, Blackberry QNX are supported, it is possible to assemble into WebAssembly pseudocode to run in a browser or compile self-contained applications that do not require an operating system. There are plans to provide the ability to create mobile applications for Android and iOS platforms.

The interface is defined using a special declarative markup language ".slint", which provides an easily readable and understandable syntax for describing various graphical elements (one of the authors of Slint was once responsible for the QtQml engine at Qt Company). Interface descriptions in the Slint language are compiled into native code of the target platform. The logic for working with the interface is not tied to Rust and can be defined in any programming language - the API and tools for working with Slint are currently prepared for Rust, C ++ and JavaScript, but support for additional languages ​​\uXNUMXb\uXNUMXbsuch as Python and Go is planned.

Published toolkit for creating graphical interfaces Slint 1.0

Several backends are provided for output, allowing you to use Qt, OpenGL ES 2.0, Skia and software rendering for rendering without connecting third-party dependencies. To simplify development, an add-on to Visual Studio Code, an LSP (Language Server Protocol) server for integration with various development environments, and an online editor SlintPad are offered. The plans include the development of a visual interface editor for designers, which allows you to create an interface by dragging and dropping widgets and elements in the drag&drop mode.

Published toolkit for creating graphical interfaces Slint 1.0
Published toolkit for creating graphical interfaces Slint 1.0

Source: opennet.ru

Add a comment