Prefab is a widget set for Squeak modeled after Tk. It is designed to make it easy to develop traditional graphical user interfaces under Squeak.

It provides:

Note that the one thing Prefab does not do is provide a formal connection between the interface and the underlying model. This is deliberate. Prefab is designed for projects where the GUI is not the interesting part.

If your project benefits from a more formal model-to-interface relationship and is a large, involved project, you will probably be better off using MVC or the Morphic equivalent directly.


Prefab is semi-abandoned. I haven't worked on it in years. In my opinion, Prefab is a dead-end and the future of Squeak application development lies in established GUI libraries like wxWidgets. Additionally, the code is pretty bad in a lot of places. But...

That being said, I find that I keep using it and furthermore, I've got some almost-ready-for-prime-time code still sitting around and ugly though it is, it's kind of useful at times.

So, when I get the time, I'm going to port it to the latest version of Morphic, finish the nearly-done stuff, throw out the rest and release that sucker. After that, except for bug fixes and maybe ports to later versions, I'm calling it done.

Stable Release

The latest stable release is 1.0.1.

Changes from 1.0.0


Prefab 1.0.1 is available under the terms of the Squeak license.

The Development Release

The latest development release is now on SqueakMap. The entry page is here. Note that this release no longer includes the XPMReadWriter changeset. You'll need to get it separately here.

The usual disclaimers apply. This is a work in progress and so contains a lot of bugs and loose ends.

As always, changesets are appreciated, but if you decide to send me one, please:

On the off-chance that you still want to contribute after all that, you might also want to e-mail me and ask what I think before you start.

Also, I'm looking for small icon images that are available under the Squeak license. If you know of any or want to make some for me, please let me know.

Back to my homepage
Site Copyright  ©  1996-2017. Chris Reuter Last modified: Tue Mar 28 00:34:11 2017