@haivio/ivisionqa
v1.0.0
Published
AI-Powered UI Testing — Visual quality, regression detection, and accessibility auditing powered by Claude Vision
Downloads
47
Maintainers
Readme
iVisionQA
AI-Powered Visual Testing & Accessibility Auditing
iVisionQA uses Claude Vision to catch visual bugs, layout regressions, and accessibility issues before your users do. Drop into your CI/CD in 5 minutes.
Quick Start
# 1. Install
npm install @haivio/ivisionqa @playwright/test @axe-core/playwright
# 2. Scaffold
npx ivisionqa init
# 3. Add your API key
echo "ANTHROPIC_API_KEY=sk-ant-your-key" >> .env.ivisionqa
# 4. Run
npx ivisionqa scan http://localhost:3000Features
- AI Visual QA — Claude Vision analyzes every screenshot for layout, typography, spacing, color, and responsiveness issues
- Visual Regression Detection — Semantic comparison between baseline and current screenshots catches unintended changes
- Accessibility Auditing — axe-core WCAG 2.1 AA automated scanning with zero AI cost
- Playwright Fixtures —
aiAnalyze,aiCompare, anda11yScanas native Playwright test fixtures - CLI Tools —
init,scan, andtestcommands for zero-config usage - Tier Enforcement — Local usage tracking with automatic monthly reset
- CI/CD Ready — GitHub Actions, GitLab CI, Azure DevOps compatible
CLI Usage
# Scaffold a new project
ivisionqa init
# Quick single-page scan
ivisionqa scan https://your-app.com
# Run full test suite
ivisionqa test
# Run only accessibility tests (free, no AI key needed)
ivisionqa test --a11y
# Run only AI review tests
ivisionqa test --ai-review
# Run only visual regression tests
ivisionqa test --visual
# Package info
ivisionqa infoSDK Usage
import { test, expect } from '@haivio/ivisionqa/fixtures';
const pages = [
{ name: 'Dashboard', path: '/dashboard', description: 'Main dashboard view' },
{ name: 'Settings', path: '/settings', description: 'User settings page' },
];
for (const pg of pages) {
test(`AI Review: ${pg.name} @ai-review`, async ({ page, aiAnalyze }) => {
await page.goto(pg.path);
const result = await aiAnalyze({
pageName: pg.name,
pageDescription: pg.description,
});
expect(result.score).toBeGreaterThan(70);
});
test(`Accessibility: ${pg.name} @a11y`, async ({ page, a11yScan }) => {
await page.goto(pg.path);
const results = await a11yScan();
expect(results.violations).toHaveLength(0);
});
test(`Visual Regression: ${pg.name} @visual`, async ({ page, aiCompare }) => {
await page.goto(pg.path);
const result = await aiCompare(pg.name.toLowerCase(), {
pageName: pg.name,
pageDescription: pg.description,
});
expect(result.score).toBeGreaterThan(80);
});
}Configuration
Environment Variables
| Variable | Description |
|---|---|
| ANTHROPIC_API_KEY | Your Anthropic API key (BYOK) |
| IVISIONQA_API_KEY | iVisionQA-issued API key |
| BASE_URL | Base URL of app under test |
| IVISIONQA_STRICTNESS | low | medium | high |
| IVISIONQA_MODEL | Claude model ID |
Programmatic Config
import { configure } from '@haivio/ivisionqa';
configure({
apiKey: process.env.MY_KEY,
strictness: 'high',
outputDir: 'my-results',
});Strictness Levels
| Level | Threshold | Use Case |
|---|---|---|
| low | >= 50 | Early development |
| medium | >= 70 | Standard CI/CD |
| high | >= 85 | Pre-release gates |
CI/CD Integration
GitHub Actions
- name: Install dependencies
run: npm ci
- name: Install Playwright
run: npx playwright install --with-deps chromium
- name: Run accessibility tests
run: npx ivisionqa test --a11y
- name: Run AI visual tests
run: npx ivisionqa test --ai-review
env:
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
BASE_URL: http://localhost:3000Pricing
| | Starter | Pro | Enterprise | |---|---|---|---| | Price | Free | $59/mo | Custom | | Analyses/mo | 500 | 5,000 | Unlimited | | Projects | 1 | 10 | Unlimited | | Report Retention | 7 days | 30 days | Unlimited | | Browsers | Chrome | All | All | | Visual Baselines | - | Yes | Yes | | Scout Agent | - | Yes | Yes | | Fix Agent | - | - | Yes | | BYOK | - | Yes | Yes | | SSO | - | - | Yes | | Self-Hosted | - | - | Yes |
vs. Alternatives
| | iVisionQA | Applitools | Percy | Chromatic | |---|---|---|---|---| | AI Analysis | Claude Vision | Proprietary | None | None | | Semantic Understanding | Yes | Limited | No | No | | Accessibility | Built-in (axe) | Separate | No | No | | Pricing (entry) | Free | ~$500/mo | $399/mo | $149/mo | | Self-hosted | Enterprise | No | No | No | | BYOK | Pro+ | N/A | N/A | N/A |
Documentation
Legal
License
Proprietary. See LICENSE.md.
