Heads Up! You're viewing the docs for v0.12, an old version of Karma. v6.4 is the newest.

Making Changes

If you are thinking about making Karma better, or you just want to hack on it, that’s great! Here are some tips on how to set up a Karma workspace and how to send a good pull request.

Setting up the Workspace #

  • Make sure you have a GitHub account.
  • Fork the repository on GitHub.
  • Clone your fork.
    $ git clone git@github.com:<your-username>/karma.git
    $ cd karma
  • Init the workspace
    $ ./scripts/init-dev-env.js

Testing and Building #

  • Run the tests via:

    $ grunt test:unit
    $ grunt test:e2e
    $ grunt test:client
    # All tests.
    $ grunt test
  • Lint the code via:

    $ grunt lint
  • Build the client code via:

    $ grunt build

The default task, just calling grunt will run build lint test.

Changing the Code #

Checkout a new branch and name it accordingly to what you intend to do:

  • Features get the prefix feature-.
  • Bug fixes get the prefix fix-.
  • Improvements to the documentation get the prefix docs-.
    $ git checkout -b <branch_name>

Open your favorite editor, make some changes, run the tests, change the code, run the tests, change the code, run the tests, etc.

Sending a Pull Request #

  • Commit your changes (please follow our commit message conventions):
    $ git commit -m "..."
  • Push to your github repo:
    $ git push origin <branch_name>
  • Go to the GitHub page and click "Open a Pull request".
  • Write a good description of the change.

After sending a pull request, other developers will review and discuss your change. Please address all the comments. Once everything is all right, one of the maintainers will merge your changes in.

Contributor License Agreement #

Please sign our Contributor License Agreement (CLA) before sending pull requests. For any code changes to be accepted, the CLA must be signed. It's a quick process, we promise!

Additional Resources #