{ "name": "impeccable", "version": "2.1.8", "author": "Paul Bakaus", "description": "Design skills, commands, and anti-pattern detection for AI coding agents", "keywords": [ "design", "frontend", "ux", "skills", "ai", "anti-patterns", "lint", "accessibility", "css", "html", "detection", "ci-cd" ], "license": "Apache-2.0", "homepage": "https://impeccable.style", "repository": { "type": "git", "url": "git+https://github.com/pbakaus/impeccable.git" }, "engines": { "node": ">=18" }, "type": "module", "bin": { "impeccable": "cli/bin/cli.js" }, "main": "./cli/engine/detect-antipatterns.mjs", "exports": { ".": "./cli/engine/detect-antipatterns.mjs", "./browser": "./cli/engine/detect-antipatterns-browser.js" }, "files": [ "cli/", "LICENSE" ], "scripts": { "build:skills": "bun run scripts/build.js", "build:site": "npx astro build", "build": "bun run build:skills && bun run build:site && cp -R dist build/_data/dist", "build:browser": "node scripts/build-browser-detector.js", "build:extension": "node scripts/build-extension.js", "clean": "rm -rf dist build", "rebuild": "bun run clean && bun run build", "dev": "npx astro dev", "preview": "bun run build && npx astro preview", "deploy": "bun run build && wrangler pages deploy build/", "test": "bun test tests/build.test.js tests/detect-antipatterns.test.js tests/windows-path-fix.test.js && node --test tests/detect-antipatterns-fixtures.test.mjs && node --test tests/detect-antipatterns-browser.test.mjs && node --test tests/cleanup-deprecated.test.mjs && node --test tests/impeccable-paths.test.mjs && node --test tests/live-wrap.test.mjs && node --test tests/live-reference.test.mjs && node --test tests/live-accept.test.mjs && node --test tests/live-inject.test.mjs && node --test tests/live-poll.test.mjs && node --test tests/live-server.test.mjs && node --test tests/live-browser-regression.test.mjs && node --test tests/live-session-store.test.mjs && node --test tests/live-browser-session.test.mjs && node --test tests/live-browser-source.test.mjs && node --test tests/live-completion.test.mjs && node --test tests/live-recovery-commands.test.mjs && node --test tests/framework-fixtures.test.mjs", "test:live-e2e": "node --test --test-timeout=600000 tests/live-e2e.test.mjs", "audit": "bun audit --audit-level=moderate", "prepack": "cp README.md README.repo.md && cp README.npm.md README.md", "postpack": "cp README.repo.md README.md && rm README.repo.md", "release:skill": "node scripts/release.mjs skill", "release:cli": "node scripts/release.mjs cli", "release:ext": "node scripts/release.mjs extension", "screenshot": "bun run scripts/screenshot-antipatterns.js", "og-image": "bun run scripts/generate-og-image.js" }, "dependencies": { "jsdom": "29.0.0", "marked": "^16.4.2" }, "optionalDependencies": { "puppeteer": "^24.42.0" }, "devDependencies": { "astro": "^6.2.1", "@paper-design/shaders": "^0.0.76", "@ai-sdk/anthropic": "^3.0.71", "@ai-sdk/openai": "^3.0.53", "@anthropic-ai/claude-agent-sdk": "^0.2.119", "@anthropic-ai/sdk": "^0.91.1", "@google/genai": "^1.50.1", "ai": "^6.0.168", "archiver": "^7.0.1", "modern-screenshot": "^4.7.0", "motion": "^12.38.0", "playwright": "^1.59.1", "wrangler": "^4.85.0", "zod": "^4.3.6" } }