We offer support through our Official Support Channels. Do not use GitHub Issues for support, your issue will be closed.
Our Contributing Guide contains useful tips and suggestions for how to contribute to this project, it's worth the read.
-
Install Node.js
-
Fork the project and clone your fork - guide
-
Install local dependencies
npm install
-
Perform any other setup operations
npm run-script setup
-
Compile changes
npm run-script compile
-
Run tests
npm run-script verify
Follow these steps in order to implement your changes/improvements into your desired project:
-
Make sure your changes are on their own branch that is branched off from master.
- You can do this by:
git checkout master; git checkout -b your-new-branch
- And push the changes up by:
git push origin your-new-branch
- You can do this by:
-
Ensure all tests pass:
npm run-script verify
If possible, add tests for your change, if you don't know how, mention this in your pull request
-
Ensure the project is ready for publishing:
git status git diff npm run-script prepare
To send your changes for the project owner to merge in:
- Submit your pull request
- When submitting, if the original project has a
dev
orintegrate
branch, use that as the target branch for your pull request instead of the defaultmaster
- By submitting a pull request you agree for your changes to have the same license as the original plugin
- When submitting, if the original project has a
To publish your changes as the project owner:
-
Switch to the master branch:
git checkout master
-
Merge in the changes of the feature branch (if applicable)
-
Increment the version number in the
package.json
file according to the semantic versioning standard, that is:x.0.0
MAJOR version when you make incompatible API changes (note: DocPad plugins must use v2 as the major version, as v2 corresponds to the current DocPad v6.x releases)x.y.0
MINOR version when you add functionality in a backwards-compatible mannerx.y.z
PATCH version when you make backwards-compatible bug fixes
-
Add an entry to the changelog following the format of the previous entries, an example of this is:
- v6.29.0 April 1, 2013 - Progress on [issue #474](https://github.com/bevry/docpad/issues/474) - DocPad will now set permissions based on the process's ability - Thanks to [Avi Deitcher](https://github.com/deitch), [Stephan Lough](https://github.com/stephanlough) for [issue #165](https://github.com/bevry/docpad/issues/165) - Updated dependencies
-
Commit the changes with the commit title set to something like
v6.29.0. Bugfix. Improvement.
and commit description set to the changelog entry -
Ensure the project is ready for publishing:
git status git diff npm run-script prepare
-
Prepare the release and publish it to npm and git:
npm run-script release
A prompt will occur asking you for a git tag annotation, enter the changelog entry that we created earlier, save and exit the prompt.