Screenshotter
Screenshotter photographs a list of web pages at full scroll height and places a searchable HTML report alongside them.
Screenshotter takes a list of URLs and photographs each page at its full scroll height. The result is a folder of images and a ready-made HTML report: a searchable gallery that runs on any web server or from a local file.
Purpose
Anyone signing off, migrating or relaunching a website needs a record of what each page looked like on a given day. Done by hand, that means dozens of unsorted screenshots in which nobody finds anything later. Screenshotter does it all in one run.
Use
You enter the addresses, choose a device and start the run. Each page is captured at full scroll height, in parallel and with a progress indicator. At the end, an index.html sits alongside the images. You can copy it to a web server or send it as a link.
The gallery is searchable, shows status codes and runs without a database, without a framework and without a build step. You can operate Screenshotter in two ways: through a web interface in the browser or from the command line.
Limits
Screenshotter does not compare. It shows what a page looks like, not how it has changed. For a before-and-after comparison, you place two runs side by side; there is no built-in diff view.
Nor does it test anything. Whether an image is missing, a text is wrong or a link leads nowhere does not appear in the report. Screenshotter is a camera, not a testing tool.
It has no server of its own either. The web interface binds to 127.0.0.1, and the finished report is a static page. To share it, you put the folder on a web server.
Origin
Screenshotter grew out of relaunch projects. Before a migration, you record what each page looks like, so that afterwards it is clear what has changed and what is missing. There are services for this, but they cost money or require an account. So I built the tool myself.
The source code is public on GitHub, under an MIT licence. It has exactly one dependency: Playwright for Chromium.
Open the tool → Source code on GitHub →