An open-source application development environment for Python/Tkinter
Last updated 2014-08-01
Rapyd-Tk 1.0 is now released! See below for details.
What is Rapyd-Tk?
Tkinter) - is an open-source development environment
specifically tailored for developing applications using Python, Tkinter
and, optionally, Pmw. Some features:
Graphical layout of frames and widgets within a form.
Widgetator for quickly seeing and setting options, bindings and pack
settings of each widget.
Integrated code editor with text colorization. User adjustable key
bindings and colorization settings.
Code editor makes it easy to switch between forms in a module and between modules in a project.
Run programs directly from inside Rapyd-Tk.
On error in the run program, can snap directly to the offending line
(or any other line in the error traceback).
Extensive, built-in help facility. Over 500 help topics.
Event-string wizard of bind-editor helps you to quickly compose
correct event-strings the first time.
Bind-editor automatically creates skeleton event handler for
Event handlers are automatically kept in alphabetical order within
the code. Rename the handler and it moves to it's new location
without you having to do anything special.
Go to the code of an event handler by double clicking on bindings
in the bind-editor.
Free Technical Support. See below for details.
Why would I want to use Rapyd-Tk?
Because you can create and, more importantly, revise and maintain
programs faster than you can by hand. You can quickly create the
foundation of a program by dividing a form into frames and then dragging
widgets from a "widget buffet" onto your form. Set
options and pack settings from a convenient editor. Use the bind editor
to create bindings and corresponding event handlers.
If you've ever created a form and then wanted to rearrange which widgets
are where then you will appreciate Rapyd-Tk. In a complex form with lots of
nested frames such a rearrangement is a major exercise and a royal pain.
With Rapyd-Tk you simply rearrange the frames and drag the widgets to their
new location and most or all of the code that generates the widgets gets
And it's open source, so it's free. License is GPL version 2.
What does it look like?
Ok, some screen shots. These are thumbnails; click on them to get the
full size version. Text under the thumbnail gives a bit of information
about each screenshot.
On the right, the graphic layout area. This shows the logical layout of
frames (the lines) and widgets (the icons inside the lines).
To find out why this view shows the logical layout and not the final
On the left, the option editor of
the widgetator, in this case showing the options of a Button widget.
On the right, the code editor, in this case showing a whole blast of
code which was generated automatically by Rapyd-Tk to create the frames and
widgets which were requested in the layout area (previous screen shot).
On the left, the bind editor of the widgetator, in this case showing
that the current widget (a Button) has one binding in effect. If you
were to double click on the binding information (that is, the line just
above the "Create New Binding" button) it would take you directly to the
corresponding event handler in the code.
On the right, the code editor, in this case showing several event
handlers. The event handlers are automatically kept in alphabetical
order by Rapyd-Tk. The text on white background is user entered text.
The text on pale blue background is Rapyd-Tk generated and maintained
On the left, the pack editor of the widgetator, showing the pack
settings for our Button. The pack 'side' setting is set by Rapyd-Tk based
on where the Button widget was placed within it's frame.
One of the 500+ help pages, in this case a page from the tutorial which
takes new users through the process of creating a simple "hello world"
application with Rapyd-Tk.
The first screen shot above shows the logical layout requested for
a form (in this case the Rapyd-Tk font selector). This screen shot shows
the resulting form when the program is run.
Other than installation instructions (which come in a README file as part of the
download) all Rapyd-Tk documentation is provided by the help system built into
Rapyd. There are over 500 help topic, including a tutorial, that cover all aspects
of using Rapyd-Tk.
Rapyd-Tk is based on the tkinter "pack" geometry manager. In theory Rapyd-Tk
could also work with the "grid" geometry manager but that hasn't been
implemented yet. Around here we know and love the pack manager, and feel it
gives a lot of bang for the Euro, so to speak. However, like many things, it
does require a bit of effort to learn the ins and outs of the pack manager.
The "place" geometry manager doesn't do much but it IS a paragon of
simplicity. If you like the "place" manager you might like
which appears to be a rather more modest project than Rapyd-Tk but it does
have the simplicity of the "place" geometry manager.
Rapyd-Tk 1.0 now released
After many years of testing and gradual development, Rapyd-Tk version 1.0
is officially released. New features in this release include an
undo/redo feature for the text editor, a proper color-assist dialog, an
improved font-assist dialog, better handling of unicode and a great many
minor enhancements and corrections.
Please note that some of the new features required changes to the format of
the ".rpj" files used to store projects. This version of Rapyd-Tk can read projects
produced by older version but the converse is not true: versions of Rapyd-Tk prior
to 1.0 are NOT able to read projects produced by this version. The solution is
to upgrade the older version of Rapyd-Tk.
Rapyd-Tk is an open-source project licensed under the GNU General Public
License, version 2, and is thus available for no-charge and can be
redistributed. Programs which are generated using Rapyd-Tk have no inherent
license restrictions. The Rapyd-Tk team encourages project authors
to release them as open-source, but project authors are free to license
Rapyd-Tk generated code as they see fit, under either open-source or commercial
Rapyd-Tk is written entirely in Python and thus should run on any machine that
supports Python. Rapyd-Tk requires Python version 2.6 or
newer. Note that Rapyd-Tk will NOT work with Python 3.x although the Rapyd-Tk
team is looking at this.
Other than depending on Tkinter (which comes with Python) Rapyd-Tk
neither requires nor depends on any other package. Rapyd-Tk supports
the use of Pmw widgets in Rapyd-Tk generated projects but such use is
To download the current version of Rapyd-Tk, click on this link:
That's right: free technical support. For a limited time only. Questions
about how to use Rapyd-TK? Something not working? How best to do
something using Rapyd-Tk? Email our technical support team as described
in the next section; we'll do our best to help you.
IMPORTANT!!! This is technical support for Rapyd-Tk issues only. It is NOT technical
support for straight Python questions or straight Tkinter questions:
there are forums elsewhere for Python and Tkinter support and that is
where such questions should be directed. But if you've got a question
about Rapyd-Tk we would be happy to hear from you.
There used to be a Facebook group devoted to Rapyd-Tk but, tiring of
Facebook constantly spamming me with ads and stuff I didn't want to see,
I deleted my Facebook account. So, if you want to contact the Rapyd-Tk
development team you will have to use email as described below.
We would be delighted to hear from you by email. Contact the Rapyd-Tk development team at:
IMPORTANT NOTE: If you send email to the above address you MUST put the word "rapyd" somewhere in
the subject line or it will be deleted by our spam filters. Since this is a publicly visible
email address it attracts spam.