Contribute: Coding

There’s always lots of coding to be done!

This can be one of the most rewarding ways to contribute to ZAP - just look at the ZAP Student Hall of Fame to see how many students have made major contributions to ZAP and where it’s led them.

You don’t have to be a student of course, anyone who know is interested will be able to help us out with the ZAP code base.

Getting Started

You should start by becoming familiar with the ZAP Desktop app even if you plan to just help with automation - it is very difficult to improve something that you do not understand and the desktop is the best way to learn about the way ZAP works.

Once you have started to get familiar with it then you will need to set up a development environment - for that see the ZAP Developer Guide

What to Work On?

Good First Issues

If you are new to ZAP development then a good place to start is by fixing an issue labelled good first issue.

These are issues which we think are suitable for people new to ZAP development and which should be explained fairly well.

Do not be afraid to ask questions on a specific issue if anything is not clear to you.

Good Second Issues

Once you’ve made a small change to the ZAP source the next thing you can look at is an issue labelled good second issue.

These should still be relatively straightforward but they are likely to be a bit more challenging that the ‘first’ issues.

Scan Rules

Scan rules are such a good place to start that they have a page dedicated to them: Contributing: Scan Rules.

Projects

We have a set of open issues labelled project - these are bigger changes which are more suitable for someone who is going to spend more time on ZAP.

If you have any other ideas for projects then feel free to get in touch with us to talk about them.

The HUD

Most of the ZAP code base is written in Java.

The one major exception is the Heads Up Display which has a significant amount of JavaScript.

If you are looking for an unusual and innovative JavaScript project then have a look at that.