gruckion/marathon-ralph
Overview
This skill configures Playwright as the end-to-end testing framework for a web project. It installs Playwright and browsers, creates a recommended config and directory layout, and adds scripts and CI integration so you can run reliable browser tests locally and in CI.
How this skill works
The skill installs @playwright/test and required browsers using the project exec command (auto-detected). It scaffolds playwright.config.ts with sensible defaults (projects, timeouts, reporters, webServer) and creates test folders, fixtures, page objects, auth setup, and .gitignore entries. It also provides CI workflow and package.json scripts to run tests and collect reports.
When to use it
- Project has no E2E framework and needs browser testing
- You want to migrate from Cypress or another tool to Playwright
- You need a reproducible Playwright config for local and CI runs
- You want built-in authentication state, traces, and fail-on-only in CI
Best practices
- Use the project-specific exec command (bunx, pnpm exec, npx) when installing and running Playwright
- Store authentication state under playwright/.auth and gitignore it except for a .gitkeep marker
- Keep tests in tests/e2e with fixtures and page objects for maintainability
- Enable trace and video on retries to speed debugging of flaky tests
- Limit CI workers and enable retries to reduce transient failures
Example use cases
- Scaffold Playwright in a new web app to start end-to-end testing
- Add auth.setup.ts to capture login state and reuse it across browser projects
- Configure GitHub Actions to run Playwright tests and upload reports
- Run a headless test suite in CI but use headed/debug modes locally during development
- Migrate an existing Cypress test suite structure to Playwright's fixtures and page object model
FAQ
Install only the browsers your tests require (e.g., chromium) to save CI time. Use playwright install chromium --with-deps for minimal installs.
How do I run a single test or project?
Use your exec command: {exec} playwright test file.spec.ts or {exec} playwright test --project=chromium. Replace {exec} with bunx, pnpm exec, npx, etc.
5 skills
This skill configures Playwright for end-to-end testing, providing ready-to-use fixtures, projects, and CI-ready defaults to streamline browser testing.
This skill enables autonomous long-running development sessions that implement specifications into fully tested applications and manage progress via Linear
This skill helps you verify UI features by performing browser-based checks and user interactions before marking work complete.
This skill detects project type, package manager, and monorepo layout to provide cached, correct commands for builds, tests, and linting.
This skill configures Vitest for unit and integration tests, enabling seamless setup, coverage, and Testing Library integration.