The R-I-B-BI Typewriter is an open-source Python tool for Drawbot that reproduces the visual output of a stylized typewriter. The tool is developed by Wim Wepster in collaboration with Frode Helland, and accompanies the release of the R-I-B-BI typeface.

Title
R-I-B-BI Typewriter
Published
1 October 2026
TypewriterMASTER.py

Download TypewriterMASTER.py from its Sourcehut repository.

Requirements

The script is developed for use with the open-source software Drawbot (Mac only). It further relies on the Regular style from the R-I-B-BI Typewriter family.

Getting started
  • Save “TypewriterMASTER.py” to a new folder.

  • We recommend making a copy of the file to include your edits. That way you can always return to the original if something goes wrong.

  • Add a second folder inside the first, name it “assets”, and place your licensed copy of R‑I‑B‑BI Typewriter Regular (“R-I-B-BITypewriter-Regular.otf”) inside.

  • Right click your copy of “TypewriterMASTER.py” and open it with Drawbot.

Defining variables

This line defines the font variable and links it to the font file. The tool should theoretically work with any monospaced font, but we offer no guarantees.

Dewey Decimal Mono Regular
 

The RGB color values are specified by editing the following variables. The page is “white”, the text is “black”, and “color” is used for the background.

Dewey Decimal Mono Regular
 

The dimensions of the page is defined in Postscript points. The margins specify the distance from the top and left edge of the paper where the first character is typed.

Dewey Decimal Mono Regular
 

You can also edit the font size and leading. These values are specified in Postscript points.

Dewey Decimal Mono Regular
 

The speed of the animation is specified as frames per second.

Dewey Decimal Mono Regular
 

These lines define the dimensions of the resulting animation in pixels.

Dewey Decimal Mono Regular
 

Define the name and file type of the exported animation by editing these. The tool exports either .gif image sequences or .mp4 videos.

Dewey Decimal Mono Regular
 

In Python code, a hashtag (#) indicates the start of a comment. Any text following this symbol on the same line is not executed. If you want to export a gif sequence, you need to replace the first instance of 'mp4' with 'gif'.

Manuscript instructions

Once your settings are defined, you can start writing your manuscript.

Hit “Run” in Drawbot, and input your text in the text window marked “instructions”. The tool respects line breaks and spaces.

A selection of characters are highjacked for the following purposes.

Dewey Decimal Mono Regular
 

Here are a few example recipes to get you started.

Dewey Decimal Mono Regular
 
Dewey Decimal Mono Regular
 
Dewey Decimal Mono Regular
 
Dewey Decimal Mono Regular
 
Dewey Decimal Mono Regular
 
Previewing

Leave “save_result” unchecked and click “Update” to preview the frames inside Drawbot.

The rendering is quite slow, so we’ve provided a few options. “Last Frame” is useful for quickly previewing the result. “Low” generates a frame for each typed character. “High” also includes the animated transitions and pauses indicated in your manuscript.

Exporting

Check “save_result” and click “Update” to export the resulting animation to the root folder of your project.

License

This project is released under the MIT License. The code is provided as is, with no warranties or promise of support. Please review the license description for more details.

R-I-B-BI BoldView Specimen
R-I-B-BI