Möbius is a visual programming environment for creating parametric scripts for generating geometric models.
The programming approach integrates imperative and associative programming styles. The associative style of programming is supported through graph-based programming, where the user constructs networks consisting of nodes and wires. (For example, see Sidefx Houdini.) The behaviour of each node is defined either by a set of sub-nodes or by an imperative procedure. The imperative style of programming is supported through blocks-based programming, where the user constructs procedures by creating sequences of code blocks. (For example, see Scratch.)
The imperative procedure performs operations by calling functions in one or more underlying function modules. These function modules consist of files that contain a set of standard Javascript functions. Currently, Möbius includes two function modules: a poly module and nurbs module. The poly module includes a set of polygon modelling functions, and makes use of the jsclipper library. The nurbs module includes a set of nurbs modelling functions, and makes use of verb library.