{
  "name": "impeccable",
  "version": "2.1.9",
  "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 tests/lib/detector-bundle.test.js tests/lib/provider-blocks.test.js tests/lib/transformers/provider-blocks.test.js && node --test tests/critique-storage.test.mjs && 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",
    "bench:detector": "node scripts/benchmark-detector.mjs",
    "bench:detector:browser": "node scripts/benchmark-detector.mjs --browser",
    "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": {
    "css-select": "^5.2.2",
    "css-tree": "^3.2.1",
    "domutils": "^3.2.2",
    "htmlparser2": "^10.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"
  }
}
