Skip to content
A simple and easy-to-use immediate-mode gui library
Branch: master
Clone or download
Lachee and raysan5 Fixed GuiSpinner defines (#60)
GuiSpinner and ValueBox were being disabled when the  RAYGUI_TEXTBOX_EXTENDED was set.
Latest commit 58307af Nov 4, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
examples RENAMED: GuiState() > GuiSetState() Sep 3, 2019
images Review images Aug 28, 2019
logo Added sample styles -WIP- Aug 21, 2019
projects/VS2017 Added VS2017 project Oct 21, 2019
styles Reduce Jungle style text spacing Oct 21, 2019
.gitignore Update .gitignore Jun 4, 2019 Create Aug 24, 2019
LICENSE Update year of copyright notices and fix typo (#46) Jul 23, 2019 Update Aug 28, 2019

raygui is a simple and easy-to-use immediate-mode-gui library.

raygui was initially inspired by Unity IMGUI (immediate mode GUI API).

raygui was originated as an auxiliar module for raylib to create simple GUI interfaces using raylib graphic style (simple colors, plain rectangular shapes, wide borders, raylib default font...).

raygui is intended for tools development; it has already been used to develop the following tools: rFXGen, rTexViewer, rGuiStyler and rGuiLayout.

raygui provided controls

Container/separator controls

WindowBox   |  GroupBox    |  Line        |  Panel

Basic controls

Label       |  Button      |  LabelButton |  ImageButton  |  Toggle      |  ToggleGroup |  CheckBox
ComboBox    |  DropdownBox |  TextBox     |  TextBoxMulti |  ValueBox    |  Spinner     |  Slider   
SliderBar   |  ProgressBar |  StatusBar   |  ScrollBar    |  ScrollPanel |  DummyRec    |  Grid

Advance controls

ListView    |  ColorPicker |  MessageBox  |  TextInputBox

raygui styles

raygui comes with a default style automatically loaded at runtime:

raygui default style

Some additional styles are also provided for convenience, just check styles directory for details:

raygui additional styles

Custom styles can also be created very easily using rGuiStyler tool.

Styles can be loaded at runtime using raygui GuiLoadStyle() function. Simple and easy-to-use.

rGuiStyler v3.1

rGuiStyler v3.1 - raygui styles editor, useful to create custom styles

raygui icons: ricons

raygui includes a separate module with a set of custom handcrafter icons, ready to be used and integrated in a easy way with raygui. This module is called ricons.h and can be automatically included just defining RAYGUI_SUPPORT_RICONS before including raygui.

#include "raygui.h"

To use any of those icons in your gui, just preprend iconId to any text written within raygui controls:

if (GuiButton(rec, "#05#Open Image") { /* ACTION */ }

or use the provided GuiIconText() function to prepend it automatically, using a clearer identifier.

if (GuiButton(rec, GuiIconText(RICON_FILE_OPEN, "Open Image"))) { /* ACTION */ }


raygui is licensed under an unmodified zlib/libpng license, which is an OSI-certified, BSD-like license that allows static linking with closed source software. Check LICENSE for further details.

You can’t perform that action at this time.