Slint is an open-source declarative GUI toolkit to build native user interfaces for Rust, C++, JavaScript, or Python apps.
Find a file
2020-08-04 16:37:10 +02:00
.cargo Fix rebuild issues, part 10523 2020-06-09 13:08:59 +02:00
.github/workflows Update rust.yaml 2020-08-04 11:21:54 +02:00
.vscode Improve setup experience with VS code 2020-07-22 09:38:02 +02:00
api Represent the window scale factor conversions in the IR 2020-08-04 12:49:37 +02:00
docs Add the self and parent implicit id 2020-08-04 15:58:40 +02:00
examples Small touch-up on the rectangles 2020-08-04 16:37:10 +02:00
helper_crates Fix formating 2020-08-04 11:52:47 +02:00
sixtyfps_compiler Add support for images (resources) in models 2020-08-04 16:09:33 +02:00
sixtyfps_runtime Don't crash if we can't find the unicode replacement character 2020-08-04 14:28:45 +02:00
sixtyfps_widgets Implement easing curve in the runtime 2020-07-29 15:20:28 +02:00
tests Add the self and parent implicit id 2020-08-04 15:58:40 +02:00
tools Rename sixtyfps_corelib to sixtyfps-corelib 2020-08-03 10:01:58 +02:00
xtask C++ Only link against the backend library 2020-06-17 18:38:47 +02:00
.clang-format Reformat public header with Qt's clang-format 2020-05-11 15:20:17 +02:00
.gitignore Improve setup experience with VS code 2020-07-22 09:38:02 +02:00
Cargo.toml Skeleton for the printerdemo 2020-08-04 10:11:02 +02:00
CMakeLists.txt Create a top level CMakeLists.txt 2020-08-04 11:16:50 +02:00
CONTRIBUTING.md Some documentation 2020-06-18 17:16:34 +02:00
README.md Some documentation 2020-06-18 17:16:34 +02:00
rustfmt.toml Initial commit laying out the structure 2020-05-04 10:49:58 +02:00

SixtyFPS

This is the monolithic repository of the SixtyFPS project.

What is SixtyFPS

It is a GUI engine, with libraries for different languages. The aim of the project is to be

  • Lightweight: We aim to provide a runtime that fits in a few MB. Minimize the RAM usage, and also be blazing fast.
  • Straightforward: We want to optimize as well for programmer and designer productivity. Making it an enjoyable experience to work with. We claim to use well thought idiomatic API for each target language. Provide well written documentation. And use of modern tools.
  • Native: We support many platforms. From embedded devices, to desktop, including mobile and web. One should feel at home on each platform. Both the user and the developer. The appearance and look and feel should match was is expected of an application build for this platform.

<insert a few screenshots here>

Documentation

SixtyFPS can be used from different frontend languages. Refer to the README of these direcory for actual user documentation.

The docs folder contains build instructions and internal developer docs.

SixtyFps.cpp

Modern C++ Library for GUI

SixtyFps-rs

Rust GUI library

SixtyFps-js

NodeJS bindings

The .60 DSL

HelloWorld = Window {
 TextLabel { text: "Hello, world" }
}

Check out the language reference

Examples / Demo

Todo

Contributions

Contributions are welcome. To contribute, please see CONTRIBUTING.md. Contributions are done under a CLA.

License

The software is provided under a double license scheme

  • GNU GPLv3: Open source license ideal for free software.
  • Commercial SixtyFps license: more details to come.