The Concrete Editor

Join Discussion


Watch this 15 minutes screencast showing Concrete at several examples Concrete Screencast

Watch the last 15 minutes of the Talk on RGen and Concrete I gave at Rubyconf X in November 2010. If you are interested in RGen or the application of RGen and Concrete you are welcome to watch the whole talk of course.


Before checking out an example, be sure to have a look at the Concrete Cheat Sheet

Please use Firefox or Chrome to test the examples, there may be problems with other browsers.

Online Registration

This demo is a Ruby on Rails application implementing a online registration platform. The platform allows its users to setup online registrations via a Concrete based DSL. An online registration is basically defined by the data items which need to be collected from participants and the pages which hold the input fields for the data items. Pages can be conditional and they may contain constraints on the data being collected.

Online registrations created within this demo will be discarded every full hour.

Try It!

State Machine Editor

This is an example editor for statemachines consisting of states and transitions between states. It comes in two flavours, one in a purely textual syntax and another one which shows the states more like a UML tool.

Try It! with textual syntax

Try It! with graphical syntax

Formula Editor

This is a simple formula editor showing how Concrete can be used to layout mathmatical syntax like square root or fraction signs. Numerical values like '5' or '100' must be wrapped in a 'value' element. This example does not allow the data to be saved.

Try It!

Concrete Language Editor

This editor can be used to create new Concrete DSLs. More precisely, it allows to create the abstract syntax description of a DSL. Once the description is finished, select all (Ctrl-A) and copy it to the clipboard (Ctrl-C). Then you can take the JSON from the clipboard area and use it to create a new Concrete editor for that new language. See the Concrete Developer's Guide for more details.

Try It!



Head over to Github for the latest version of Concrete as well as for the examples.

Ruby users can also get Concrete as a gem: gem install concrete