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

There are several Eclipse plugins providing support for Gramar in Eclipse. To install those plugins,

  • In Eclipse, goto `Help → Install new software…`
  • Add… a new update site with the URL
  • Install all features on the site.
  • Repeat with update site URL
  • Repeat with update site URL

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: 2016/08/18 15:23 by chrisgerken