Generate diagrams for parser grammars
UNLICENSE License
GrammKit is a tool for generating syntax diagrams (also known as railroad diagrams) for parser grammars. Check out the online version.
Currently these grammar formats are supported:
Is uses the railroad-diagrams library to generate SVG images.
npm install -g grammkit
To generate static html page run grammkit yourgrammar.peg
.
To generate markdown file run grammkit -t md yourgrammar.peg
.
This will generate separate SVG files and a markdown file that includes them.
npm install grammkit
var grammkit = require('grammkit');
var parse = require('pegjs/lib/parser').parse;
var grammar = parse('start = left ("+" / "-") right');
grammkit.diagram(grammar.rules[0]);
// => '<svg>...</svg>'
The SVG renders as:
Clone repo and install dependencies with npm install
.
Run npm run dev
and open browser at http://localhost:1234 .
Here is an overview how the format conversion works:
List of other project worth checking out.