Avrodoc is a documentation tool for Avro schemas. It reads schemas in
Avro's JSON schema format --
*.avsc files -- and renders them nicely in a web browser.
Why? Because your data type definitions are your most important API... and you would never make an API without good documentation, would you?
You need node.js installed.
Avrodoc can be used in two modes of operation:
To run as a command-line tool:
$ npm install avrodoc -g $ avrodoc [my-schema.avsc [another-schema.avsc...]] [-o=my-documentation.html] [> my-documentation.html] [-- my-schema.avsc [another-schema.avsc]] # open my-documentation.html in a web browser
To run as a web app:
$ git clone git://github.com/ept/avrodoc.git $ cd avrodoc # put your schema files in the schemata/ directory $ npm update $ node app # open http://localhost:8124/ in a web browser
If you want to change the schema file directory, set the
SCHEMA_DIR environment variable. If you
want to use a port other than 8124, set the
PORT environment variable. The app is ready to deploy
to Heroku: add your schema files to the
schemata directory, commit,
heroku create && git push heroku master.
Copyright 2012 Martin Kleppmann. Licensed under the Apache License, Version 2.0.
LICENSE for details. Thanks to contributors:
Pull requests welcome.