Conversation
A copy-paste `.devcontainer/` reference (cypress/browsers image, desktop-lite noVNC desktop, --shm-size) so `cypress open` can run inside Linux and the review UI approves the same pixels CI produces. Docs cover fonts and the parity caveat, Docker alternatives on macOS, Apple Silicon, Codespaces and how it pairs with per-platform baselines. README FAQ and CONTRIBUTING link to it. Refs: #212 Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
FRSgit
force-pushed
the
docs/devcontainer
branch
from
September 23, 2026 12:17
0a5e588 to
284a7d9
Compare
…er sidecar
The per-platform section now shows the opt-in {platform} token instead of
calling it the v5 default, and a new section explains where this sits in
the #212 plan: full-fidelity runner-in-Docker (this container, later the
run-cypress helper) versus the DOM renderer sidecar that keeps Cypress
native and headed.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
One of the cheap items from the #212 list: instead of fighting macOS vs Linux font rendering, run
cypress openinside Linux and review the diffs there.This adds a
.devcontainer/folder that works for this repo and doubles as a copy-paste reference for anyone using the plugin. It's a singledevcontainer.json, no Dockerfile:cypress/browsers:node-24.21.0-chrome-153.0.8010.36-1-ff-156.0-edge-153.0.4234.32-1(same Node as.nvmrc, Chrome/Firefox/Edge preinstalled, amd64 + arm64)desktop-litefeature, so you get a small Fluxbox desktop with noVNC on port 6080 and can click around in the Cypress app from your normal browser--shm-size=2g, because Chrome and Electron fall over on Docker's 64 MB defaultpostCreateCommanddoes corepack + pnpm install + build +cypress verifyThe README next to it explains why this exists, how to open it (VS Code, CLI, Codespaces), how to run
pnpm test:e2eheaded and see it, fonts (and the honest part: byte-identical output only happens if CI runs in the same image, there's a two-linecontainer:snippet for that), Docker alternatives on macOS, Apple Silicon and--platform=linux/amd64, the Codespaces--shm-sizecaveat, how this pairs with the opt-in{platform}token forimagesPath(#422), and where it sits in the #212 plan: this is the full-fidelity "whole runner in Linux" option, the core path inRENDERER-DESIGN.mdis a renderer sidecar that keeps Cypress native and headed and only moves the rendering into a pinned container, and therun-cypressCLI helper will be the scripted version of what this folder does by hand. The plugin README got a FAQ entry pointing at it and CONTRIBUTING mentions it as an optional way to work on the repo.A couple of things I checked while writing this, since they change the config:
nodeuser (it's built from a plain Debian trixie base, Node is installed by script), soremoteUserisroot; the doc says how to add a user viacommon-utilsif you careCI=1in the image env, which I unset incontainerEnvso interactive tooling behaves normallyI built it here with the
devcontainerCLI on Apple Silicon (arm64) and it came up fine: the desktop-lite feature installed,postCreateCommandran through (pnpm 12.5.1, install, build,cypress verifyagainst/root/.cache/Cypress/16.1.0),node -visv24.21.0,DISPLAYis:1andCIis unset in a fresh shell, the VNC/noVNC processes are running, andpnpm test:integrationpasses inside the container. What I didn't do is the headed part, so before or right after merging:pnpm test:e2eshows the Cypress app on port 6080 and the Batch Review carousel can approve an image into__image_snapshots_local__Refs: #212
🤖 Generated with Claude Code