For square grid puzzles, I use the cutting-edge invention known as Google Sheets. I open the puzzle and the Sheets in side-by-side windows, and then copy the grids into my Sheets. Sheets lets you resize cells (I usually do 25px width), fill in cells with color & text, and adjust borders. Usually that's all you need. I save intermediate steps with screenshots.
For non-square grid puzzles I use an image editor. The key things this image editor needs are:
- the ability to save intermediate pictures/steps
- a paint-bucket/fill-in tool
- a line tool - freehand & straight
- an arrow tool
- a circle or rectangle tool
The first step is to grab the initial-state picture given by the setter. Usually you can just download their image, but sometimes it is better to screenshot it. Then you can start solving! Here's what those key things listed above do, respectively:
- save pictures of key moments or checkpoints of the puzzle (for doing a write-up later)
- color a grid cell
- write in cells (freehand) and connect cells + make a border bolder (straight)
- point to where a key deduction is made
- highlight a certain area of the puzzle
If you need something else, such as a certain shape to mark cells/borders, you have two options. Either draw that shape using whatever shape tools the image editor has, or find a transparent picture on the internet and copy that into your larger picture.