A JavaScript library to draw pretty git graphs in the browser.
Project page: http://gitgraphjs.com/
How to start
You have different options to start with the library:
- Download the latest release.
- Clone the repo:
git clone git@github.com:nicoespeon/gitgraph.js.git
. - Install with npm:
npm install --save gitgraph.js
. - Install with Bower:
bower install gitgraph.js
. - Use the CDNjs hosted lib.
Production files are available under the build/
directory.
Report a bug / Ask for a feature
You found some nasty bug or have a cool feature request? Just open a new issue.
Please have a look at the Issue Guidelines from Nicolas Gallagher before doing so.
Documentation
The JavaScript source code is documented with JSDoc.
Contributing
Editor preferences are available in for the editor config easy use in common text editors. Read more and download plugins at http://editorconfig.org.
The project uses Grunt with convenient methods for our workflow. It's how we lint our code, run tests, generate documentation, etc. To use it, install the required dependencies as directed and then run the following Grunt commands.
Install Grunt
From the command line:
- Install
grunt-cli
globally withnpm install -g grunt-cli
. - Install [the necessary local dependencies][] with
npm install
. [the necessary local dependencies]: https://github.com/nicoespeon/gitgraph.js/blob/master/package.json
When completed, you'll be able to run the various Grunt commands provided from the command line.
> Need more information about how to get started with Grunt?
Available Grunt commands
test code - grunt test
Check source code against JSHint then runs unit tests with Jasmine.
generate documentation - grunt doc
Generate source code documentation into dist/docs/
(not versioned) with
JSDoc.
compile a non-versioned release - grunt dist
Clean dist/
directory, lint code, output the minified release into
dist/gitgraph.min.js
and generate the documentation into dist/docs/
.
compile a new release - grunt release
Lint code, output the source and minified releases into build/
and generate
the official documentation into docs/
.
open a live reload server - grunt server
For a better code experience, this grunt task opens a live server in your favorite browser. This server is automatically reloaded when you save a project file.
Please note that examples/index.html
is the default file for testing ;)
Versioning
We use SemVer as a guideline for our versioning here.
What does that mean?
Releases will be numbered with the following format:
<major>.<minor>.<patch>
And constructed with the following guidelines:
- Breaking backward compatibility bumps the
<major>
(and resets the<minor>
and<patch>
) - New additions without breaking backward compatibility bump the
<minor>
(and reset the<patch>
) - Bug fixes and misc. changes bump the
<patch>
Authors and contributors
Nicolas Carlo - @nicoespeon } http://nicoespeon.com
Fabien Bernard - @fabien0102
Copyright and License
Copyright (c) 2013 Nicolas CARLO and Fabien BERNARD under the MIT license