This week in SixtyFPS

6th of September to 12th of September 2021

Posted on September 13, 2021

SixtyFPS is a toolkit to efficiently develop fluid graphical user interfaces for any display: embedded devices and desktop applications. We support multiple programming languages, such as Rust, C++, and JavaScript. Find more information at or go straight to github at

Project News

Version 0.1.2 of sixtyFPS was released last week! Please check out the release blog post for more information.

UI Library

  • New Features
    • Allow the sixtyfps-compiler and sixtyfps-viewer to read from stdin ( fe015a )

      By specifying - as a path

    • Add image-scaling property to Images to control how they are scaled ( a03a27 )

      Thanks Ryan Van Gilder @ryban!

    • A Multi-line TextEdit widget was added.
  • Changes to the .60 language
    • Parser: make the parentheses around if element optional ( 8d15bc )

      closes #466

    • Allow global singletons to have default callback handlers ( 4d3f08 )

      It's already working, we just need to remove the error handling :-)

      Fixes #467

  • Fixes
    • Fix stretch of children of the GroupBox widget ( ec7d9a )

      Apply a vertical stretch in the fluent and ugly style, to match the native style.

      Fixes #487

    • Interpreter: fix comparison of enums ( 4aeb9b )

      We need to normalize native enum to use dashes

  • Make it possible to disable the GL backend in the CMake build ( 1fd8c7 )
    • The default backend no more selects a default :-). Instead the Rust API crate, Rust interpreter API crate and the CMake project define the same features and defaults.
    • The C++ crate depends on the interpreter without its defaults.
    • In CMake the X11 and Wayland features become dependent options, that are only show in the CMake configure UI if the GL backend is enabled. This way a GL-disabled build won't also pass --features x11.
  • Janitor work


News about applications built with SixtyFPS

  • cargo-ui

    • Feature management
      • Improve feature selection mechanism for workspaces ( 5ee1bb )

        Always show all features of the workspace and prefix individual features with the package name.

      • Make it possible to disable default features ( 76d73b )
    • Toolchain management
      • Show the list of installed toolchains in the toolchains tab ( 03a911 )


52 patches were committed by 4 authors.