Files
nuclei-templates/CONTRIBUTING.md
2021-07-05 19:26:59 +05:30

3.9 KiB

Template Contributing Guidelines

This documentation contains a set of guidelines to help you during the contribution process. We are happy to welcome all the contributions from anyone willing to improve/add new templates to this project. Thank you for helping out and remember,no contribution is too small.

Submitting Nuclei Templates 👩‍💻👨‍💻

Below you will find the process and workflow used to review and merge your changes.

Step 1 : Find existing templates

Step 2 : Fork the Project

  • Fork this Repository. This will create a Local Copy of this Repository on your Github Profile. Keep a reference to the original project in upstream remote.
template-fork
git clone https://github.com/<your-username>/nuclei-templates
cd nuclei-templates
git remote add upstream https://github.com/projectdiscovery/nuclei-templates
  • If you have already forked the project, update your copy before working.
git remote update
git checkout master
git rebase upstream/master

Step 3 : Create your Template Branch

Create a new branch. Use its name to identify the issue your addressing.


# It will create a new branch with name template_branch_name and switch to that branch
git checkout -b template_branch_name

Step 4 : Create Template and Commit

  • Create your template.
  • Add all the files/folders needed.
  • After you've made changes or completed template creation, add changes to the branch you've just created by:
# To add all new files to branch template_branch_name
git add .
  • To commit give a descriptive message for the convenience of reveiwer by:
# This message get associated with all files you have changed
git commit -m "Added/Fixed/Updated XXX Template"

NOTE:

  • A Pull Request should have only one unique template to make it simple for review.
  • Multiple templates for same technology can be grouped into single Pull Request.

Step 5 : Push Your Changes

  • Now you are ready to your work to the remote repository.
  • When your work is ready and complies with the project conventions, upload your changes to your fork:
# To push your work to your remote repository
git push -u origin template_branch_name

Step 6 : Pull Request

  • Go to your repository in browser and click on compare and pull requests. Then add a title and description to your pull request that explains your template.
  • Voila! Your Pull Request has been submitted and will be reviewed by the moderators and merged.🥳

Need more help?🤔

You can refer to the following articles on basics of Git and Github and also contact the Project Mentors, in case you are stuck:

Tip from us😇

Nuclei outcomes are only as excellent as template matchers💡