JavaScripting

The definitive source of the best
JavaScript libraries, frameworks, and plugins.


  • ×

    Gitgraph.js

    A JavaScript library to draw pretty git graphs in the browser
    Filed under 

    • 🔾55%Overall
    • 1,489
    • 1 days
    • 🕩253
    • 👥3

    GitGraph.js

    A JavaScript library to draw pretty git graphs.


    Build Status MIT License lerna

    Getting started

    GitGraph.js codebase is a monorepo. Packages are released under @gitgraph/* scope.

    As a user, you're probably interested in one of the rendering libraries:

    You'll find usage details in their README.

    As a contributor, you might be interested in checking out gitgraph-core. It contains the core logic for rendering libraries to use.

    Running the project locally

    Pre-requisites:

    Setting things up:

    1. Clone the repository: git clone git@github.com:nicoespeon/gitgraph.js.git
    2. Install dependencies: yarn install
    3. Bootstrap the project: yarn run lerna bootstrap

    Lerna will install dependencies of all packages and links any cross-dependencies.

    Available root-level commands are detailed in package.json. You would usually need:

    • yarn test to run Jest unit tests (yarn test --watch for watch mode)
    • yarn develop to start Storybook, watching for changes of all packages

    You can also go to specific packages and run available commands detailed in their package.json. For example, you could cd packages/gitgraph-core/ and run yarn test --watch to only run tests of this package.

    But root-level commands are more convenient!

    Contributing

    Contributing Guide

    Read our contributing guide to learn about our development process, how to propose bugfixes and improvements, and how to build and test your changes to GitGraph.js.

    Good First Issues

    To help you get your feet wet and get you familiar with our contribution process, we have a list of good first issues that contain bugs which have a relatively limited scope. This is a great place to get started.

    Versioning

    We use SemVer as a guideline for our versioning here.

    Releases use the following format:

    <major>.<minor>.<patch>
    
    • Breaking changes bump <major> (and reset <minor> & <patch>)
    • Backward compatible changes bump <minor> (and reset <patch>)
    • Bug fixes bump <patch>

    Authors and contributors

    Nicolas Carlo - @nicoespeon / https://nicoespeon.com

    Fabien Bernard - @fabien0102 / https://fabien0102.com

    0 1 2 3 4 5 6 7

    Copyright (c) 2013 Nicolas CARLO and Fabien BERNARD under the MIT license.

    💁‍ What does that mean?

    Thanks

    Thanks to Chromatic for providing the visual testing platform that help us catch visual regressions for the rendering libs.

    Show All