Mendix is a model driven fast application development platform.
From November 2016 until march 2018 I worked on parts of the Mendix Web Modeler. the work consisted of two distinct parts, making the Mendix Model SDK production ready, and the development of a web based generic projectional editor for the different expression languages in Mendix.
Het first project was further develop the Mendix Model SDK. This SDK has been extended with functionality for e.g. undo and redo, and the SDK has been redesigned to be a stable foundation for the growing Mendix Web Modeler
Projectional Web Editor
The first project is the development of a web based projectional editor, a concept similar to editors in MPS. Mendix includes a number of expression languages and within the context of the web modeler there are multiple reasons to prefer a projectional editor over a text editor. A projectional editor is more suitakle for the typical Mendix users, who are generally not hard core programmers, but instead people with more of a business background. It gives better opportunities to guide the user, as he can see what he can do instead of just having an empty screen in front of him. From a technical perspective a projectional editor provides more possibilities e.g. for real-time collaboration, undo/redo etc. in combination with the Model SDK and Model Server. The projectionele editor is written in TypeScript, using React and mobx.
You can try out the projectionakl editor by using microflow expressies in the Mendix Web Modeler.