Starting Euphoria Gui Programming

Euphoria GUI Programming

Everyone has their favorite GUI programming library.

The big choices are:

Windows Linux,OS-X,Windows
win32libex EuGTK

There are also a few smaller libraries:

Windows Multi-Platform
Arwen Japi
Redy Tk


Full featured Windows GUI and IDE.

Windows GUI Download

Windows IDE Download


Full featured multi-platform GUI programming. Must install wxWidgets. Not currently being developed.

Multi-Platform GUI Download

Multi-Platform IDE Download

However, an updated wxWidgets library is under development.


A full featured, complete and up-to-date GUI package for programming, which runs on Linux, OS-X, and Windows. EuGTK equires the GTK3 libraries, which are included with most Linux distros (or use apt-get to install them).

Installing GTK on Windows is now dead simple, and cross-platform programs generally work very well with little or no change to your source code. A link to the current Windows installer for the GTK3 for Windows library files is provided in the EuGTK download. Unfortunately, only 64-bit platforms are supported for Windows.

On OS-X, you'll need to install the GTK3 library.

EuGTK uses a simple "object oriented" syntax, where you create an instance of a particular GTK control (called a "widget") and set or get various properties belonging to that control. You only need your favorite text editor to write EuGTK programs, but if you wish, EuGTK works well with the latest Glade to design your user interface using the "drag-and-drop" method. As with other programming languages, such as VisualBasic or Delphi, you'll need to write some Euphoria code to react to user inputs.

Nearly 250 example programs are included which illustrate how to use each of the GTK widgets. GTK uses CSS to modify the appearance of controls (fonts, colors, background images, animations,etc.) which gives you much more design flexibility than other GUI packages.

EuGTK is generally in sync with the latest available GTK3 version. Download the EuGTK package here: Home Page

include GtkEngine.e 
    cssfile = locate_file("resources/mystyle2.css"),     -- uses css for appearance; 
    css = create(GtkCssProvider,cssfile),                -- load css 
    win = create(GtkWindow,"border=5,size=400x300,$destroy=Quit"), -- main window 
    pan = create(GtkBox,"orientation=VERTICAL"),         -- a generic container 
    lbl1 =  create(GtkLabel,"markup='<b><u>Radial Gradient</u></b>\nspecified in mystyle2.css'"), 
    lbl2 = create(GtkLabel,"markup=Moo?,angle=23,font=Purisa 48"), 
    cow = create(GtkImage,"thumbnails/coweat2.png"),    -- an image 
    box = create(GtkButtonBox),                  -- a specialized container for buttons 
    btn = create(GtkButton,"gtk-quit","Quit")    -- params are caption, function, [data] 
    add(win,pan)                    -- add widgets to containers 
    add(box,btn)                    -- params are (parent,child)                     
    pack(pan,{lbl1,lbl2,cow,box})   -- second param can be a {list} 

(Examples from EuGTK)


Original, closed source, has an IDE and provides a small and simple GUI for Windows users.

Windows Download


Improved, opensource, and inspired by euWinGui. Provides a small and simple GUI for Windows users.


Small and fast Windows GUI programming. No IDE

Windows Download


Redy is an open-source graphical application development environment with a GUI and widget system written in 100% Euphoria. It includes an IDE called RedyCode.

Currently being developed.


Simple multi-platform GUI. Requires IUP installation. No IDE required.

Requires an iup binary specific to each operating system. On Windows this binary is easy to install. On Linux this binary can be difficult to install.

iup4eu - under development.

Multi-Platform Home Page Jeremy C's legacy IUP library for RDS Euphoria.


Small and easy, but uses old Java interface. No IDE required. Requires a Java installation. Eccentric, dated visuals.

Linux Download

Windows Download


Needs TCL/TK installation. Runs TK GUI using its TCL syntax so the syntax is un-Euphoric. No IDE required.

Multi-Platform Home Page


Quick Links

User menu

Not signed in.

Misc Menu