plone / plone/documentation

Automate screenshots and videos

Open
#1,611 8 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

04 type: enhancement 43 lvl: complex 99 tag: Plone 6.x
Dominant language
Makefile
Stars
106
Forks
190
Avg merge
3d 2h
Merged PRs (30d)
1

Description

Documentation should have current screenshots of its user interface for its end user manuals, for both Classic UI and Volto. We also want to detect when there is a change in the UI, where the current image differs from the previous one, and have it reported as a warning or error to get the attention of the contributor in a pull request or earlier during testing.

This used to be a feature in Plone 5 documentation, but has since become unsupported. Now there are better tools and there are some efforts already underway.

  • At PloneConf 2023, @polyester developed a proof of concept for using Cypress to collect screenshots of the Volto frontend Plone demo at https://demo.plone.org/. Volto already uses Cypress for its GitHub Workflows and automated testing. Further help on bridging the gap to make it use a Docker container would be much appreciated.
  • At the Midsummer Sprint 2023, and subsequently at PloneConf 2023, a migration of Classic UI's robot framework tests to Playwright is well under way. @gforcada and @datakurre are the main contributors, along with @thet and @petschki.
  • A member from the Python Documentation team suggested using a tool based on Playwright called shot-scraper.
  • @stevepiercy is working on a proposal for Google Season of Docs that would include this issue. We did not get accepted in 2024. We'll try again in 2025.
  • https://github.com/plone/Products.CMFPlone/issues/3987

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the Cypress proof of concept for the Volto demo, the Playwright migration for Classic UI, and the linked Products.CMFPlone issue. Compare the Docker-container gap and shot-scraper proposal with the documentation workflow; done means an agreed automation path captures current UI screenshots and reports visual changes in pull requests or testing.

Written by the indexing model from the issue text.

Assessment

Tech stack
cypress, docker, playwright
Domain
documentation, frontend, testing
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.