The GNOME Software Development Kit (SDK) now includes a compiler called Blueprint-Compiler, which allows developers to use the Blueprint markup language to define application interfaces. This addition to the GNOME SDK will eliminate the need for manual installation of extra dependencies when applying Blueprint in GNOME applications. Blueprint has already been incorporated into the GNOME SDK nightly builds and will feature in releases starting with GNOME 49 in the autumn.
Blueprint simplifies interface creation using the GTK4 library, offering a straightforward declarative syntax that mirrors GTK widgets and supports common templates, types, and handlers. Unlike the traditional GTK UI-files format that uses XML markup, Blueprint streamlines the process by eliminating the need for manual XML editing, which developers often find cumbersome.
For enhanced integration with integrated development environments and code editors, the SDK includes an LSP server (Language Server Protocol) for syntax highlighting, error analysis, code completion, and more. Blueprint support is already integrated into Gnome Builder and is also available as plugins for popular editors likeVIM, GNU EMACS, and Visual Studio Code. Additionally, a utility is available to facilitate the transition from XML interface definitions to Blueprint.
One of the key advantages of using Blueprint is its human-readable syntax, which obviates the need for specialized visual interface editors. Despite this, Blueprint does not require any modifications to GTK and is considered an overlay that compiles markup into the standard GTKBuilder XML format. The compiler code is written in Python and is distributed under the lgplv3 license.