A presentation tool for the Squeak development platform
Supported platforms:
- Squeak 5.1
- Squeak 5.2
- Squeak 5.3
Squeak 6.0 is unofficially supported as well.
For Squeak 6.0, please install from the master branch like this:
Metacello new
baseline: 'Presenter';
repository: 'github://hpi-swa-teaching/PowerSqueak:master/packages';
get;
load.Squeak Trunk is also a target plattform, but due to the fast changing nature of Trunk, certain versions of Squeak Trunk may not work.
Squeak 5.0 is officially unsupported (see Travis-ci).
For easy installation, please first install Metacello.
Then run the following code in your Squeak image:
For Squeak 5:
Metacello new
baseline: 'Presenter';
repository: 'github://hpi-swa-teaching/PowerSqueak:release/packages';
get;
load.For Squeak 6:
Metacello new
baseline: 'Presenter';
repository: 'github://hpi-swa-teaching/PowerSqueak:master/packages';
get;
load.Alternatively, download the .sar file from the latest release and install it into your Squeak image via drag and drop (Squeak 5 only).
| Release | master |
|---|---|
To open PowerSqueak either
During edit mode, you can use the menu to save, load or export a presentation. You can insert a text field, a code field, an image, a shape or slide numbers with the "Insert" button. Shapes include circles, lines, rectangles and arrows. You can hide, delete, duplicate, move or save a slide as a layout with the "Slide" button or the miniature context menu. Slides can also be assigned a custom background color via the slide context menu. Text fields support formatting actions such as text size, text color, bold, italic, underline, alignment and bullet lists. Bullet lists can be toggled, indented and outdented from the text context menu.
For advanced features like deleting morphs or resizing text, right-click the Morph.
You can now use the features in the Menu bar to edit your text.

PowerSqueak supports reusable slide layouts. A slide can be saved as a layout from its miniature context menu. Existing layouts can be renamed or deleted from the same menu. To create a slide from a layout, click the "with Layout" button below the miniature list. Hovering over a layout in the layout chooser shows a preview of that layout.
Slides can be organized into sections and subsections from the miniature context menu. Section headers are shown in the miniature sidebar and can be collapsed or expanded. Section headers provide actions to rename, delete, indent, outdent, move, collapse all and expand all sections. When deleting a section, PowerSqueak lets you choose whether to delete the section and its contents or keep the contents by promoting them to the parent section.
PowerSqueak supports a snapping raster for easy layouting.
If the snapping raster is active, resizing a Morph will automatically snap the corners of the Morph to an imaginary raster.
To enable the snapping raster click the button. It will change its color to show that it's activated.
You can select your snap size by clicking on the small arrow right next to the snap button.

You can drag a miniature slide with the left mouseclick and drop it anywhere. If you want to change the position of a miniature, drag the miniature and drop it on the lower half of the above slide.
To enter presentation mode, click the "Present" button.
To control your presentation during presentation mode, use:
| Key | Action |
|---|---|
| Esc | Leave presentation mode |
| right arrow/arrow down/page down | next slide |
| left arrow/arrow up/page up | previous slide |
| Number keys | Jump to a slide number (0 = last slide) |
| i | (de-)activate interactivity and (un-)hide cursor |
Because PowerSqueak supports slide selection with both arrow and page keys, most wireless presenters will work correctly with PowerSqueak, but pressing the present button on your presenter will not work, as the Squeak VM does not support function keys.
By pressing "i" during presentation mode, you can disable/enable interactivity and hide/unhide the cursor. This mode is added to avoid the visual clutter of the cursor and to keep text on slides from grabbing the keyboard input, which prevents you from changing slides.
Leaving the presentation mode also enables interactivity and unhides the cursor.
Play around with the two modes a bit. Interactive mode is a great advantage of using PowerSqueak and allows you to hold extra-ordinary interactive presentations. You can add notes and incorporate feedback on the fly, show demos on the slides directly and generally interact with your audience in a very different way. So try to take a few minutes when preparing your presentation to reflect on this cool new ability and see how you can use this cool new tool to create an even better presentation.
PowerSqueak can save and load presentations to/from the file system.
Use the corresponding save/load buttons in the "File" menu to save/load the presentation.
If you want to view the saved files, go to the PSPresentation directory in your Squeak VMs directory.
You can share presentations by copying any presentation in the PSPresentation directory into the PSPresentation directory of another image.
In the other image you can then load the presentation as usual in PowerSqueak.
If parts of a saved presentation are missing or corrupted, PowerSqueak tries to load the remaining content and reports missing metadata, missing morph files or missing layout directories. You will get a notification.
- Warning: some morphs may crash your image if they are saved/loaded!
- It is recommended, that you save your image before every save/load operation in PowerSqueakYou may also export your presentation to a list of .png files, which will get exported into the PSPresentationsExports folder in your Squeak VMS directory
PowerSqueak uses Squeak's command-key handling. On macOS, command shortcuts use Cmd. On Linux and Windows, use Alt instead. For example, Cmd + t on macOS corresponds to Alt + t on Linux/Windows.
For a complete overview of Squeak's command-key mappings, see CommandKeyMappings in the Squeak image.
| Key | Action |
|---|---|
| right arrow / arrow down / page down | Go to the next slide |
| left arrow / arrow up / page up | Go to the previous slide |
| Number keys 1-9 | Jump to slide 1-9 |
| 0 | Jump to the last slide |
| Cmd + t / Alt + t | Create a text field in hand |
| Delete / Backspace | Delete the selected morph |
| Key | Action |
|---|---|
| Cmd + i / Alt + i | Create an image |
| Key | Action |
|---|---|
| Cmd + 6 / Alt + 6 | Toggle italic formatting |
| Cmd + 7 / Alt + 7 | Toggle bold formatting |
| Cmd + 9 / Alt + 9 | Toggle underline formatting |
| Key | Action |
|---|---|
| Delete | Delete the highlighted slide miniature |
| Tab | Create a subsection for the selected slide, or indent the selected section anchor |
| Shift + Tab | Outdent the selected section anchor |
| Key | Action |
|---|---|
| i | Toggle interactive/non-interactive mode and show/hide cursor |
| Esc | Leave presentation mode |
Credits:
- Team 2018: Leon Bein, Tom Braun, Maximilian König, Jonas Zimmermann, Leon Matthes
- Team 2019: Mark Bader, Vincent Opitz, Julian Berger, Katharina Wille, Mona Sobhani
- Team 2026 Marvin Heyne, Robert Vetter, Julian Windheuser, Jan-Erik Großmann, Tobias Krauth, Lukas Kresse, Sebastian Hahn
