A simple and easy-to-use immediate-mode-gui library
Switch branches/tags
Nothing to show
Clone or download
raysan5 Remove gui style file saving
Format is being redesigned and functionality moved to rGuiStyler tool
Latest commit 1f1a28e Nov 14, 2018


raygui is a simple and easy-to-use immediate-mode-gui single-file header-only 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 on tools like rFXGen, rGuiStyler and rGuiLayout.

raygui styles

raygui comes with two predefined styles, selectable at compile time just defining RAYGUI_STYLE_DEFAULT_LIGHT or RAYGUI_STYLE_DEFAULT_DARK but additional custom styles can be created using rGuiStyler and loaded at runtime using GuiLoadStyle(), GuiLoadStyleImage() or GuiLoadStylePalette() functions.

raygui light design

raygui dark design

raygui candy design

raygui cherry design

raygui history

raygui development started on December 2014 by two intenship students (Kevin and Daniel) guided by me, the objective was creating a simple and easy-to-use immediate-mode-gui module for raylib, intended for tools development. On June 2015, library was mostly functional (including all basic planned controls) and we started working in the styling options for the library, focusing on an easy way to style some controls properties. Consequently, development of rGuiStyler also started at that point but resources were quite limited and project didn't move much during the following year, most of the time was invested in raylib development.

On June 2016, project was picked up again and raygui 1.0 was released at the end of that month. During August 2016, raygui was used to develop rFXGen and also an early protoype of rGuiLayout, mainly as an usage prove test. After that, raygui project was stopped again for the coming months.

On June 2017, a complete redesign of the library started, almost from scratch, all functions were reviewed and mostly rewritten and a brand new styling system was developed. The objective was using raygui professionally in several tools.

On January 2018, two students (Adria and Jordi) started working on raygui and related tools. Consequently, library and tools evolved A LOT in the following months. rGuiStyler was completely redesigned and rewritten from scratch. rGuiLayout turned from a protoype into a professional software and raygui reached version 2.0 with plenty of new controls and features.

raygui 2.0 provided controls

Container/separator controls, useful for controls organization

  • WindowBox
  • GroupBox
  • Line
  • Panel

Basic controls

  • Label
  • Button
  • LabelButton
  • ImageButton
  • ToggleButton
  • ToggleGroup
  • CheckBox
  • ComboBox
  • DropdownBox
  • Spinner
  • ValueBox
  • TextBox
  • Slider
  • SliderBar
  • ProgressBar
  • StatusBar
  • ScrollBar (WIP)
  • DummyRec

Advance controls

  • ListView
  • ColorPicker
  • GuiMessageBox
  • Grid


The following people has invested their time and effort into raygui project. Big thanks to them!