Repository navigation
Screenshots
phpbb-test-board/screenshots.py path/to/project[@REF] -o path/to/project/docs/images [--seed SCRIPT]Saves PNG screenshots of an extension's or style's pages with Playwright and Chromium. The board is named "Example board" and uses English.
- Extensions are shown in prosilver, with their board and ACP pages.
-
Styles are recognised by their
style.cfg. The style is installed and made every user's style.
--help lists the projects with screenshots. To add one, write a shots_<name>() function and add it to the SHOTS table, keyed by the extension's composer name or the style's name from style.cfg.
Options:
-
--seed SCRIPTruns a PHP script that fills the board with forums, topics and users first, asphp SCRIPT BOARD_ROOT. Use it for styles and for any pages that need real content; a fresh board has one forum and one post. seed-forum'sbin/seed-standard-fixtures.phpworks well. -
--build DIRis for phpbbmodders/documentation only: the phpbbdocs-hugo build to serve.
phpbbmodders/contactadmin saves the three documentation gallery shots (ACP settings, guest form, member form) with private-message delivery and no captcha, plus three for its 10/18/2026 update gallery. The last of those sends a guest message through the form and shows the topic the contact bot posts.
phpbbmodders/knowledgebase makes its own categories, articles (live, waiting for review, with a revision, and a draft) and forum questions, so a board search for backup shows its block; --seed with seed-forum's standard fixtures adds members to write them. Its two ACP pages are taken in full, so a new setting is not cut off.
phpbbmodders/newspage replaces the board's welcome topic with four example news topics, the last one opening with a picture the script draws (and deletes afterwards), and makes that forum the news forum. It saves the news page with the first image above the text and without poster information or post buttons, one news item as the admin, the ACP settings (in full), the news page on a phone and filtered by forum, then the news page with poster information and post buttons on, shortened to 120 characters, and without the filters.
phpbbmodders/copylinks clicks a topic title, a post subject and an FAQ question and shows each one's icon turned into a tick, with the copy to the clipboard stubbed, since headless Chromium may not write to it. It also saves the ACP settings. Use --seed with seed-forum's standard fixtures for a topic with replies.
phpbbmodders/topicclaim needs --seed with seed-forum's standard fixtures, for its forum_moderator user. That user claims the busiest topic with a note, and the admin claims another topic in the same forum. Claims show only to moderators, so every shot is taken as the admin: the forum's topic list, the claim notice on the topic page, the claim page (with take over, transfer and release), MCP → Claimed topics and the ACP settings.
For example, ProMinoDeux's screenshots:
phpbb-test-board/screenshots.py path/to/ProMinoDeux -o path/to/ProMinoDeux/docs/images \
--seed path/to/seed-forum/bin/seed-standard-fixtures.php| Argument/option | Behavior |
|---|---|
REPO[@REF] |
Git checkout and optional ref; default HEAD. |
-o, --out DIR
|
Required PNG output directory. |
-s, --seed SCRIPT
|
PHP fixtures, invoked as php SCRIPT BOARD_ROOT. |
--build DIR |
Built site with index.html, for documentation only. |
-w, --with PATH[@REF]
|
Repeatable extension dependency, in enablement order; not for styles. |
-b, --board-dir DIR
|
Board directory; overrides PHPBB_TEST_BOARD. |
-p, --port PORT
|
Temporary server port; default 8083. |
-h, --help
|
Usage and registered projects. |
Registered projects at the documented revision:
phpbbmodders/copylinksphpbbmodders/documentationphpbbmodders/feedlinksphpbbmodders/knowledgebasephpbbmodders/newspagephpbbmodders/sfscompanionphpbbmodders/stopforumspamphpbbmodders/topicclaimphpbbmodders/wikiProMinoDeux
The script has project-specific capture routines; it is not an arbitrary website screenshot crawler. For a new project, add its routine and register it before expecting screenshots.
For repository documentation, select docs/images/screenshots/ as the output, retain full-resolution PNGs, and use linked HTML thumbnails with explicit proportional width/height. Preview each image for meaningful content, clipped controls and accidental private data. Exit statuses: 0 all saved, 1 capture failure, 2 invalid arguments.
- Home
- Installation
- Release workflows
- Extension releases
- Style releases
- Language pack releases
- Default branch releases
- GitHub releases and recovery
- Test board setup
- Smoke and feature checks
- Unit tests and PHP lint
- Screenshots
- Rename upgrade checks
- Template accessibility
- Forum update posts
- Waiting for PR checks
- Troubleshooting
- Maintainer checks