Greg Bergé (@gregberge_) header
Greg Bergé (@gregberge_) profile picture

Co-founder & CEO @argos_ci • Product Engineer @gitbookio • Creator of React libraries https://nitter.cf/t.co/NidQtq7qIJ • ex @doctolib

Paris, France
Joined March 2009
The launch of react-twc.vercel.app was a huge success! 🔹 8K+ views on the website 🔹 7 pull requests 🔹 370+ stars 🔹 130+ reposts, 1K+ likes, 210K+ views on X 🔹 +300 X followers Are you interested in a step-by-step guide to successfully launch an open-source library?
17
31
353
40,846
We build a service that keeps screenshot baselines out of Git. I still think a small suite should commit them: that's how toHaveScreenshot() is designed, and anyone who clones the repo can run the tests. The interesting question is where that stops working.
1
189
The one that bites later: Playwright never deletes a baseline. Rename a screenshot and the old file stays. Requests for a cleanup option were closed as not planned in 2026, so I included a script that lets Git find the orphans.
1
40
Three tools can now take component screenshots in a real browser, and two of them changed between July and September 2026. Jeremy, my co-founder, ran the same React button through Storybook's Vitest addon, Vitest browser mode and Playwright component testing.
1
194
A detail I like: we don't document Playwright component testing as an Argos integration, but mount() returns a regular locator, so argosScreenshot takes it as the element. Jeremy ran it on 1.63.0.
1
1
52
I'd let a coding agent review every visual diff on a pull request. I wouldn't let it approve one. I wrote up how to connect Claude Code, Cursor and Codex to Argos with read-only scopes, and what to ask the agent once it's connected.
27
6
453
A setup gotcha: codex mcp add requests every scope the server advertises. Uncheck the write scopes on the consent page, or pin scopes in config.toml and set default_tools_approval_mode = "writes" so Codex asks before any write.
1
92
The part of SAML SSO that bugged me was offboarding: someone leaves the company, and they keep Argos access until a person remembers to remove them. Argos now speaks SCIM, so Okta or Entra ID removes them the moment they're deactivated.
1
212
Linking an existing account by email was another one. Anyone can add an unverified email to their account, so provisioning only links on verified ones. Otherwise it would hand team access to whoever added the address first.
1
97
And Okta and Entra ID don't speak quite the same SCIM: Entra sends booleans as "False" strings and capitalizes its operations. The test suite replays both. argos-ci.com/changelog/scim-…
64
I went looking for the Chromium flag that makes Playwright screenshots match between a Mac and Linux CI. There isn't one. The closest I got on Playwright 1.63.0: 1,907 pixels apart, with a bundled web font and two flags. With system fonts, over 37,000.
3
346
So I'd make one Linux image the only renderer. From a Mac, keep the runner local and send the browser to that image with run-server: PW_TEST_CONNECT_WS_ENDPOINT=ws://127.0.0.1:3000/ npx playwright test Then drop the platform from snapshotPathTemplate.
1
63