Morphic is an interface construction environment which uses graphical objects called "Morphs" for simplified GUI-building which allow for flexibility and dynamism. It was originally created for Self, but later, was ported to other programming languages like Squeak, JavaScript, Python, and Objective-C.


Morphic was originally developed by Randy Smith and John Maloney for the Self programming language.[1]


Morphic is used in Lively Kernel, a web programming environment under MIT License (originally developed by Sun Microsystems) which is written in JavaScript and HTML5 / Scalable Vector Graphics (SVG). On a higher abstraction level Morphic is also used in the enterprise performance management toolkit of doCOUNT, based on Ruby on Rails. In order to serve as basis for the Snap! (formerly BYOB), a Morphic environment called Morphic.js[2] was written in JavaScript by Jens Mönig using only the HTML5 Canvas APIs. Morphic is the basis for the standard user interface of Squeak and Pharo Smalltalk.


  1. ^ Maloney, John H.; Smith, Randall B. (1995). "Directness and liveness in the morphic user interface construction environment". Proceedings of the 8th annual ACM symposium on User interface and software technology. pp. 21–28. doi:10.1145/215585.215636. ISBN 089791709X. S2CID 14479674. Retrieved 12 January 2023.
  2. ^ Mönig, Jens. "morphic.js". GitHub. Retrieved 24 March 2020.