Javascript graphical editor that generates DSL