Slint is an open-source declarative GUI toolkit to build native user interfaces for Rust, C++, JavaScript, or Python apps.
Find a file
2020-05-11 15:33:38 +02:00
.github/workflows Prospective fix for more effective cargo caching on GH actions 2020-05-11 11:26:32 +02:00
api Reformat public header with Qt's clang-format 2020-05-11 15:20:17 +02:00
examples Run the C++ generated component through the GL backend 2020-05-11 15:05:33 +02:00
helper_crates/const-field-offset Silent warnings 2020-05-07 08:20:44 +02:00
sixtyfps_compiler Parser: add support for parentheses in expressions 2020-05-11 11:19:57 +02:00
sixtyfps_runtime Draft of the layouting runtime code 2020-05-11 15:33:38 +02:00
.clang-format Reformat public header with Qt's clang-format 2020-05-11 15:20:17 +02:00
.gitignore Ignore some generated files 2020-05-11 08:59:39 +02:00
Cargo.toml Add a crate to compute the field offsets as const fn 2020-05-06 20:58:10 +02:00
README.md Minor README edits 2020-05-06 09:53:33 +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>

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" }
}

The compiler

The runtime library

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.