Stats
Actions
Tags
Use when scaffolding Playwright e2e tests for prototypes built with design-kit-react-nextjs. Generates tests colocated with the prototype.
How this skill is triggered — by the user, by Claude, or both
Slash command
/design-kit-react-nextjs:e2e-playwrightThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Scaffold Playwright e2e tests for a Next.js prototype.
Scaffold Playwright e2e tests for a Next.js prototype.
@playwright/test)playwright.config.ts in the repo root<project-path>/_e2e/import { test, expect } from '@playwright/test';
test.describe('<Feature Name>', () => {
test.beforeEach(async ({ page }) => {
await page.goto('/path-to-prototype');
});
test('happy path — <description>', async ({ page }) => {
// arrange
// act
// assert
});
});
@axe-core/playwright on the pageimport { checkA11y } from 'axe-playwright';
test('page is accessible', async ({ page }) => {
await page.goto('/path');
await checkA11y(page, null, {
detailedReport: true,
detailedReportOptions: { html: true }
});
});
// Visible text
await expect(page.getByText('Submit')).toBeVisible();
// Form interaction
await page.getByLabel('Email').fill('[email protected]');
await page.getByRole('button', { name: 'Submit' }).click();
// Error state
await expect(page.getByRole('alert')).toContainText('required');
// Loading state
await expect(page.getByRole('status')).toBeVisible();
await expect(page.getByRole('status')).toBeHidden(); // resolves
// Success state
await expect(page.getByText('Success')).toBeVisible();
<feature-name>.spec.ts<project-path>/_e2e/<feature-name>.spec.tsnpx claudepluginhub anindhitavidia/design-agent-kit --plugin design-kit-react-nextjsCreates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.