User Tools

Site Tools


Grammatical Architectures

So what if there's a code generation component to Gramar? With a gramar you can capture repeatable software architectures and generate (historically speaking) upwards of 95% of a deployable application's implementation (code, config files, HTML and wiki pages, unit test cases, etc.). But that's just the shiny object in the room. The real value in using Gramar is that it gives you a way to formally and explicitly describe to others how you want your software built.

Gramar is a tool that helps software architects describe their architectures in the most consumable form possible: tools that generate the code they care about while leaving developers the freedom to develop the business logic that the developers care about.

Gramar helps you pay off the technical debt before you even have a chance to accrue it.

If you're writing a one-off custom application then there's an advanced usage of Gramar that could really speed up your development, but the more common use for Gramar is by those developers who are building applications on popular platforms, like Spark, Kafka, MapReduce, Storm, Sqoop, J2EE (servlets, EJB, message beans, etc.), Eclipse and IntelliJ tooling, Portals, public and proprietary middleware, and on and on.

Go here to learn more about what an individual gramar is and does.

Read about the Gramar_Development_Process.


Gramar is a next-generation greenfield implementation of Eclipse Model-to-Text JET and, before that, the Design Pattern Toolkit from IBM. A gramar can be applied not just in Eclipse, but in IntelliJ, as a stand-alone java application, within a web application or in any other environment with a Java runtime.

Getting started

Eclipse Support

As of the latest release of Eclipse support for Gramar, there is only one plugin to load for full Eclipse support. We've also learned the hard way that as Eclipse 3.8 doesn't really play well with Java 1.8, it's probably best to work with Eclipse Neon and Java 1.8.

To install Gramar into Eclipse Neon…

  • In Eclipse, goto `Help → Install new software…`
  • Add… a new update site with the URL
  • Install all features on the site (ought to be just one for now).
  • Restart Eclipse.

Note that there is a known problem getting started in general with Eclipse on Ubuntu. Details can be found here.


There is an end-to-end walkthrough for a gramar that generates almost 98% of the complete implementation of an Apache Storm topology.

More walkthroughs for other gramars are coming soon.

Gramar in Maven Central Repository

Version 1.0.0 of gramar is now in the maven central repo. In order to access gramar function from within your Java code or gramar, use:


For more information, see org.gramar:gramar:1.0.0

start.txt · Last modified: 2017/01/16 21:38 by chrisgerken