Open-source preview · v0.1
A Wayback Machine for the sites you own.
Capture your websites on a schedule. See exactly what changed. Turn years of pixels into a visual record—kept on your infrastructure, not ours.
- Self-hosted
- AGPL-3.0
- Your archive
Three frames. One clear story.
Yesterday should be easy to find.
Screenshot-a-Day does one job: it keeps a dependable visual history of the web pages you are responsible for.
Capture
Schedule exact, reproducible frames across Chromium, Firefox, and WebKit—even for authenticated or internal pages.
Compare
Put any two moments side by side, fade between them, or generate a pixel-level heatmap of what moved.
Publish
Keep the archive private, share an unlisted link, or publish an indexable gallery with GIF and WebM timelines.
No screenshot cloud required
Your sites.
Your schedule.
Your archive.
Some pages cannot—and should not—be handed to a third-party capture service.
Screenshot-a-Day runs where you choose. Headers and cookies are encrypted with your installation key, private targets require an explicit allowlist, and your images stay in storage you control.
Read the security modelThe useful details
Small enough to understand.
Serious enough to trust.
- 01 / Access
- Encrypted headers + cookies
- 02 / Browsers
- Chromium, Firefox + WebKit
- 03 / Sharing
- Private, unlisted + indexable
- 04 / Motion
- GIF + WebM timelines
- 05 / Automation
- REST API + signed webhooks
Bring your own machine
Four lines from zero to visual memory.
Screenshot-a-Day ships as two containers and one persistent data volume. Add your installation secrets, bring it up, and open the setup screen.
Early preview v0.1 is for self-hosters who are comfortable running Docker Compose and reading the deployment guide.
$ git clone https://github.com/arts-link/screenshot-a-day.git
$ cd screenshot-a-day
$ cp .env.example .env
# Add the three generated secrets to .env, then:
$ docker compose up -d
Read the deployment guide
The web changes. Keep the receipts.