Skip to content


Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Models of Interaction

Models of Interaction is a catalogue of the different ways of interacting with computers and their underlying models. This is one segment of a trilogy. The other parts are called Models of Computer and Models of Computation. This is an attempt at trying to understand the prime factors which are involved into understanding the process of performing computation from end to end.

Hope you enjoy this curation!

Design ∩ Code


This is a curation of tools that blur the line between design and engineering. Check out the tweet thread here for a more fuller curation while I integrate them here:


Baku Hashimoto


A Lisp-based design tool that bridges graphic design and computational arts. It is a polished product that shows the power of having linguistic abstractions juxtaposed with an interactive design space.

What is double awesome is Baku is using this to run his own design experiments, much like Karsten Schmidt does with his Umbrella.


Devine Lu Linvega


Dotgrid is a grid based tool that uses Postscript to draw vector graphics. Yet another marvel from 100 Rabbits.



Each tool built by hundredrabbits is worth checking out. They have this aesthetic that transports you to a parallel world that coexist with ours. They are pushing the boundaries of art and trailblazing a way of living.


Matthew Keeter

It is a solid modelling tool with a Guile Scheme based code editor that is suited for parametrized / procedural designs.


Christian Swinehart


Plotdevice by Christian Swineheart is a Python-based design ∩ coding tool that combines geometric shapes, typography, freeform Bézier curves and images. These can then be exported as images / animations:


Jon Gold


René by Jon Gold is a design tool with which one can declaratively describe styles and explore their space of permutations:

The rationale for its design can be read in this post by Jon:

Quartz Composer

Pietter-Oliver Latour


Quartz Composer was such a fun nodes and wires environment to do design + coding work in. Pierre–Oliver Latour made this tool inspired from Miller Puckette’s music synthesis environment Max and Apple acquired it.


Szymon Kaliski


One slick environment in this category is Protoboard by Szymon Kaliski:

Szymon makes a lot of other cool experiments and if you are interested in this space, you should definitely checkout his other stuff:


Undev Studio


Cables is a tool for creating high end real time interactive graphics in a node-based editing environment:


Jürg Lehni, Jonathan Puckey


Paper.js (used to be known as Scriptographer) is an amazing Javascript library for creating canvas graphics. It has a sketch environment to debug drawings. It unlocked a special wave of creative stuff during 2010s.



Two Lives Left



Shade is an amazing shader editor tool designed by Two Lives Left. It has some pretty sweet interaction design.



One of the cool spin offs of Quartz Composer is Origami. Brandon Walkin and team took Quartz Composer from where Apple left it to a refined product that allows for prototyping interactions for mobiles and desktops.



An environment that started out as a Javascript animation library but transformed into a full blown prototyping environment is Framer built by the old Made By Sofa team.

Macaw (Acquired by InVision)


Macaw was a design tool built circa 2014 that enabled visually coding websites. The app was discontinued once the team joined Invision but it was a product with an interesting design direction.

DeepUI (Prototype)

What if you could describe your software without using text but gestures that describe the behaviours? DeepUI took a bold move in this direction. The environment hasn’t shipped yet but it was a daring take on what it means to develop software.


Engare is a design oriented game made by Mahdi Bahrami



Nodebox is a node based environment for generative data / interactive visualizations.

Visualization made in Nodebox





Though not exactly a design ∩ code tool, it has great in-game pattern generators that exhibit machine/visual language duality. Lot to learn from this when creating a design ∩ code tool. Made by Mehdi Bahrami

Canvas Sketch




Catalogue of models of interaction. Part of the trilogy on models of computers/interaction/computation






No releases published


No packages published