A11YSmith Architecture
A11YSmith is a monorepo managed with pnpm workspaces and Turborepo. It contains packages for auditing web, Android, iOS, and document accessibility, plus an AI agent ecosystem, shared libraries, and a dashboard.
Package Dependency Graph
@a11ysmith/cli
+-- @a11ysmith/web-auditor
+-- @a11ysmith/android-auditor
+-- @a11ysmith/ios-auditor
+-- @a11ysmith/document-auditor
+-- @a11ysmith/agents
+-- @a11ysmith/core
+-- @a11ysmith/schemas
+-- @a11ysmith/standards
@a11ysmith/agents
+-- @a11ysmith/schemas
+-- @a11ysmith/core
+-- @a11ysmith/standards
@a11ysmith/web-auditor
+-- @a11ysmith/schemas
+-- @a11ysmith/core
+-- @a11ysmith/standards
@a11ysmith/document-auditor
+-- @a11ysmith/schemas
+-- @a11ysmith/core
+-- @a11ysmith/standards
@a11ysmith/run-manager
+-- @a11ysmith/schemas
+-- @a11ysmith/core
+-- @a11ysmith/android-auditor
+-- @a11ysmith/ios-auditor
+-- @a11ysmith/artifact-ingestion
@a11ysmith/workbench-server
+-- @a11ysmith/run-manager
@a11ysmith/workbench (Astro SSR app)
+-- @a11ysmith/run-manager
+-- @a11ysmith/workbench-server
@a11ysmith/core
+-- @a11ysmith/schemas
@a11ysmith/dashboard (hybrid: static + server)
+-- @a11ysmith/schemas
+-- @a11ysmith/agents
+-- @a11ysmith/web-auditor Package Descriptions
| Package | Path | Description |
|---|---|---|
@a11ysmith/cli | packages/cli | CLI with 13 commands for auditing, agent management, and report sanitization |
@a11ysmith/web-auditor | packages/web-auditor | Web auditing via axe-core and Playwright (10 rules) |
@a11ysmith/android-auditor | packages/android-auditor | Android source and artifact analysis (10 rules) |
@a11ysmith/ios-auditor | packages/ios-auditor | iOS source and artifact analysis (13 rules) |
@a11ysmith/document-auditor | packages/document-auditor | Office and PDF accessibility scanning (28 rules) |
@a11ysmith/agents | packages/agents | 57 AI accessibility agents, 6 teams, 5 platform generators |
@a11ysmith/schemas | packages/schemas | Shared Zod schemas for findings, evidence, and configs |
@a11ysmith/core | packages/core | Verdict engine, severity scoring, and report generation (JSON, Markdown, HTML) |
@a11ysmith/standards | packages/standards | WCAG 2.2 criteria catalog with Target mapping |
@a11ysmith/artifact-ingestion | packages/artifact-ingestion | Parse CI artifacts (view hierarchies, lint reports) into the Finding schema |
@a11ysmith/run-manager | packages/run-manager | Run lifecycle management: schemas, state machine, persistence, artifact validation, multi-platform execution |
@a11ysmith/workbench-server | packages/workbench-server | Framework-agnostic JSON API handler for assessment CRUD, artifact upload, reassessment, and diff URL generation |
@a11ysmith/workbench | apps/workbench | Astro SSR app providing the Consultant Audit Workbench GUI for creating and managing accessibility assessments |
@a11ysmith/dashboard | apps/dashboard | Astro hybrid site (static + server) with 24 page templates for viewing audit results, live auditing, and managing agents |
Data Flow
The audit pipeline follows a linear data flow from source input to final report output:
Source Code / Artifacts / Documents
|
v
Evidence Collectors
(parse HTML, XML, Swift, Kotlin, OOXML, PDF)
|
v
Rule Engine
(match evidence against rule definitions)
|
v
Findings
(structured violations with severity, confidence, WCAG mapping)
|
v
Verdict Engine
(aggregate pass / fail / review-needed)
|
v
Reporter
(format findings as JSON, Markdown, HTML, or CSV)
|
v
Report Output Technology Stack
| Layer | Technology |
|---|---|
| Language | TypeScript 5.x (strict mode with noUncheckedIndexedAccess) |
| Runtime | Node.js 22 |
| Package manager | pnpm 9 |
| Build orchestration | Turborepo |
| Web auditing | axe-core + Playwright |
| Schema validation | Zod |
| Testing | Vitest (538+ tests across 10 packages) |
| Formatting | Prettier |
| Dashboard | Astro (hybrid: static pages + Node.js server for live audits) |
| CI/CD | GitHub Actions |
| Publishing | Changesets + GitHub Packages |