Main Navigation


Graphical User Interface (GUI) Development in Perl

Learn Perl Now!
And get a job doing Perl.

Graphical User Interfaces (or "GUIs") are rich, graphical programs and applications that are displayed on the screen using windows, menus, buttons, input boxes, list boxes and other controls. Perl has extensive support for many GUI libraries.


wxPerl is a Perl interface to the open source, cross-platform wxWidgets library, which provides native look and feel, while still providing a lot of convenience.

Padre, the Perl IDE is being written using wxPerl, and one can search its source code (using ack , grep or a similar tool) to find useful examples of wxPerl code in action.


Perl-Tk is a port of the Tk toolkit that originated with Tcl, to Perl. It is cross-platform and open-source, but provides relatively unattractive widgets/controls, which are not easily skinnable. However, it provides a high-level API with many convenient niceties, and is commonly available.

Perl/Qt and Perl/KDE

Perl bindings to the portable Qt library and the various libraries of KDE (the K Desktop Environment), which is written using it. The licence of the bindings is the GNU General Public License which is incompatible with many publicly distributed non-open-source and open-source licences, but using it for programs for in-house use is OK.


A set of Perl bindings for GTK+ and various related libraries (including those of the GNOME project). Provides an attractive look and feel on X-Window-based UNIX systems (including Linux) which looks quite foreign on Microsoft Windows. A very capable and powerful GUI library.