#ui #widgets #interface #graphics


Fork of conrod_core (an easy-to-use, 100% Rust, extensible 2D GUI library) compatible with WASM and Kiss3D

2 unstable releases

Uses old Rust 2015

0.64.0 Oct 28, 2019
0.63.0 Apr 28, 2019

#353 in GUI

Download history 43/week @ 2023-06-14 69/week @ 2023-06-21 45/week @ 2023-06-28 44/week @ 2023-07-05 35/week @ 2023-07-12 46/week @ 2023-07-19 54/week @ 2023-07-26 33/week @ 2023-08-02 48/week @ 2023-08-09 48/week @ 2023-08-16 34/week @ 2023-08-23 31/week @ 2023-08-30 53/week @ 2023-09-06 43/week @ 2023-09-13 28/week @ 2023-09-20 32/week @ 2023-09-27

168 downloads per month


17K SLoC

Conrod Build Status Crates.io

An easy-to-use, 2D GUI library written entirely in Rust.


  1. What is Conrod?
  2. Getting Started
  3. Let's Create a GUI
    • Setup a Basic Window (using piston_window)
    • Conrod Setup
    • Instantiating Widgets
    • Widget Positioning and Layout
  4. Using and Customising Themes
    • What is a Theme?
    • Custom Themes
    • Serializing Themes
  5. Designing Custom Widgets (using the Widget trait)
    • The Widget trait
    • The widget_style! macro
    • The builder_methods! macro
    • Making a Button widget
  6. Custom Graphics and Window Backends
    • Demonstration of Backend Implementation (using glium and glutin)
  7. Internals
    • The Ui's Widget Graph
    • Ui::set_widgets - How does it work?
  8. FAQ

The Guide is a work-in-progress. If a section is not linked, it is likely not yet implemented.


Crate Badges Description
conrod_core Crates.io docs.rs The fundamentals for any conrod project.
conrod_derive Crates.io docs.rs Provides the WidgetCommon and WidgetStyle derive macros.
conrod_winit Crates.io docs.rs Simplifies using conrod_core with winit
conrod_gfx Crates.io docs.rs Simplifies using conrod_core with the gfx ecosystem
conrod_glium Crates.io docs.rs Simplifies using conrod_core with glium
conrod_piston Crates.io docs.rs Simplifies using conrod_core with piston
conrod_vulkano Crates.io docs.rs Simplifies using conrod_core with vulkano

Current State

We're just starting to reach a stable-ish API pattern! There will still be some large changes, however these are more likely to be new features than API overhauls.

To get a clearer idea of where we're at see the issues and in particular, the 1.0.0 milestone.


Want to help out? See Piston's how to contribute guide.


Licensed under either of

at your option.


Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Example Assets


~92K SLoC