#gui #bindings #graphics

macro fltk-derive

Rust bindings for the FLTK GUI library

25 releases

✓ Uses Rust 2018 edition

new 0.1.24 Apr 1, 2020
0.1.23 Apr 1, 2020
0.1.22 Mar 31, 2020

#216 in GUI

Download history 202/week @ 2020-03-17 215/week @ 2020-03-24

174 downloads per month
Used in fltk

MIT license

1.5K SLoC


Rust bindings for the FLTK GUI library. Still in alpha.

The FLTK gui crate is a crossplatform lightweight library which can be linked to statically (LGPL) to produce small, self-contained and fast binaries.

Using in a project

Just add the following to your project's Cargo.toml file.

fltk = "^0.1.8"

An example hello world application:

use fltk::window::*;

fn main() {
    let mut wind = Window::new(100, 100, 400, 300, "Hello from rust");

Please check the examples directory for more examples.


To build, just run:

$ git clone https://github.com/MoAlyousef/fltk-rs
$ cd fltk-rs
$ cargo build


CMake and Ninja need to be installed and in your PATH for a crossplatform build. After that on Windows and Mac OS X, normally no external dependencies are needed. For Linux, X11 development headers need to be installed for development. For Debian-based distribution, that means running:

$ sudo apt-get install libx11-dev libxext-dev libxft-dev libxinerama-dev libxcursor-dev libxrender-dev libxfixes-dev


To run the examples:

$ cargo run --example editor
$ cargo run --example calculator
$ cargo run --example gallery
$ cargo run --example button
$ cargo run --example hello

alt_test alt_test alt_test alt_test

Currently implemented widgets

Most common widgets are implemented:

  • Button
  • RadioButton
  • ToggleButton
  • RoundButton
  • CheckButton
  • LightButton
  • RepeatButton
  • Native FileDialog
  • Frame (Fl_Box)
  • Window
  • DoubleWindow
  • Group
  • Pack
  • Tabs
  • Scroll
  • Tile
  • TextDisplay
  • TextEditor
  • Input, IntInput, FloatInput, MultilineInput
  • Output, MultilineOutput
  • MenuBar
  • MenuItem
  • Choice (dropdown list)
  • Slider, ValueSlider
  • Dial
  • Counter
  • Scrollbar
  • Roller
  • Images


  • Complete widget set
  • Better documentation
  • Better testing


Contributions are very welcome!


~18K SLoC