Slint, un kit de herramientas para crear interfaces gráficas

Slint

Slint , un conjunto de herramientas integral para crear interfaces de usuario nativas para dispositivos integrados y de escritorio,

Hace poco se dio a conocer el lanzamiento de la primera versión significativa del kit de herramientas GUI de Slint, que resume tres años de trabajo en el proyecto. La versión 1.0 se posiciona como lista para comenzar a usar en proyectos de trabajo.

Los objetivos principales del proyecto son el bajo consumo de recursos, la capacidad de trabajar con pantallas de cualquier tamaño, proporcionar un proceso de desarrollo conveniente tanto para programadores como para diseñadores, y garantizar la portabilidad entre diferentes plataformas.

De las plataformas, se admiten Linux, Windows, macOS, Blackberry QNX, es posible ensamblar en pseudocódigo WebAssembly para ejecutar en un navegador o compilar aplicaciones independientes que no requieren un sistema operativo. Hay planes para brindar la capacidad de crear aplicaciones móviles para las plataformas Android e iOS. Por ejemplo, las aplicaciones basadas en Slint pueden ejecutarse en una placa Raspberry Pi Pico equipada con un microcontrolador ARM Cortex-M0+ y 264 KB de RAM.

Slint usa programación declarativa para agilizar el desarrollo de la interfaz de usuario. Nuestro enfoque para optimizar el desarrollo y el rendimiento de las aplicaciones es:

La interfaz de usuario se describe en un lenguaje declarativo utilizando una sintaxis que proporciona una forma extensa de describir los diversos elementos gráficos al mismo tiempo que es fácil de leer, escribir y aprender.
El compilador Slint optimiza y traduce la descripción de la interfaz de usuario a código nativo,
La lógica comercial, que puede escribir en cualquier idioma, está conectada con la interfaz de usuario mediante las API específicas del idioma proporcionadas por Slint.

Slint viene con un lenguaje de marcado diseñado específicamente para interfaces de usuario. Este lenguaje es fácil de aprender, leer y escribir, y proporciona una manera poderosa de describir elementos gráficos, su ubicación y el flujo de datos a través de los diferentes estados. Es una sintaxis familiar para describir la jerarquía de elementos y enlaces de propiedad.

La interfaz se define utilizando un lenguaje de marcado declarativo especial «.slint», que proporciona una sintaxis para describir varios elementos gráficos (uno de los autores de Slint fue una vez responsable del motor QtQml en Qt Company).

Las descripciones de la interfaz en el lenguaje Slint se compilan en el código nativo de la plataforma de destino. La lógica para trabajar con la interfaz no está vinculada a Rust y se puede definir en cualquier lenguaje de programación; actualmente, la API y las herramientas para trabajar con Slint están preparadas para Rust, C ++ y JavaScript, pero admiten lenguajes adicionales como Python y Go está previsto.

Slint viene con soporte de herramientas para completar el código, navegar, refactorizar y resaltar la sintaxis. A medida que desarrolla y refina la interfaz de usuario, la vista previa en vivo de Slint muestra los cambios en tiempo real para proporcionar una retroalimentación instantánea.

Se proporcionan varios backends para la salida, lo que permite usar Qt, OpenGL ES 2.0, Skia y software de renderizado para renderizar sin conectar dependencias de terceros.

Para simplificar el desarrollo, se ofrece una adición a Visual Studio Code, un servidor LSP (Language Server Protocol) para la integración con varios entornos de desarrollo y un editor en línea SlintPad. Los planes incluyen el desarrollo de un editor de interfaz visual para diseñadores, que permite crear una interfaz arrastrando y soltando widgets y elementos en el modo de arrastrar y soltar.

Finalmente si estás interesado en poder conocer un poco más al respecto, puedes consultar los detalles en el siguiente enlace.

Para los interesados en este kit de herramientas, deben saber que está escrito en Rust y tiene licencia GPLv3 o licencia comercial (para uso en productos propietarios sin abrir el código). El kit de herramientas se puede utilizar tanto para crear aplicaciones gráficas para sistemas estacionarios como para desarrollar interfaces para dispositivos integrados.

El proyecto está siendo desarrollado por Olivier Goffart y Simon Hausmann, antiguos desarrolladores de KDE que trabajaron en Qt en Trolltech.

from Linux Adictos https://ift.tt/ck9evuD
via IFTTT