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.
-
Fork the project and clone your fork - guide
-
Setup the project for development
npm run our:setup
-
Compile changes
npm run our:compile
-
Run tests
npm test
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 test
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:
npm run our:release: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 2013 April 1 - Progress on [issue #474](https://github.com/docpad/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/docpad/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:
npm run our:release:prepare
-
Prepare the release and publish it to npm and git:
npm run our:release