auditmysite 0.9.24

Resource-efficient WCAG 2.1 Accessibility Checker in Rust
Documentation
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://github.com/casoon/auditmysite/docs/json-report.schema.json",
  "title": "auditmysite single report",
  "type": "object",
  "required": ["metadata", "report"],
  "additionalProperties": false,
  "properties": {
    "metadata": { "$ref": "#/$defs/metadata" },
    "report": { "$ref": "#/$defs/normalizedReport" },
    "fix_guidance": {
      "type": "array",
      "items": { "$ref": "#/$defs/fixGuidance" }
    },
    "performance": { "type": ["object", "null"] },
    "seo": { "type": ["object", "null"] },
    "security": { "type": ["object", "null"] },
    "mobile": { "type": ["object", "null"] },
    "ux": { "type": ["object", "null"] },
    "journey": { "type": ["object", "null"] },
    "confidence_summary": {
      "type": "array",
      "items": { "$ref": "#/$defs/confidenceSignal" }
    },
    "capabilities": {
      "type": "array",
      "items": { "$ref": "#/$defs/capabilitySignal" }
    },
    "history": { "type": ["object", "null"] }
  },
  "$defs": {
    "metadata": {
      "type": "object",
      "required": ["tool", "timestamp", "wcag_level", "execution_time_ms"],
      "additionalProperties": false,
      "properties": {
        "tool": { "type": "string" },
        "timestamp": { "type": "string", "format": "date-time" },
        "wcag_level": { "type": "string" },
        "execution_time_ms": { "type": "integer", "minimum": 0 }
      }
    },
    "severityCounts": {
      "type": "object",
      "required": ["critical", "high", "medium", "low", "total"],
      "additionalProperties": false,
      "properties": {
        "critical": { "type": "integer", "minimum": 0 },
        "high": { "type": "integer", "minimum": 0 },
        "medium": { "type": "integer", "minimum": 0 },
        "low": { "type": "integer", "minimum": 0 },
        "total": { "type": "integer", "minimum": 0 }
      }
    },
    "moduleScore": {
      "type": "object",
      "required": ["name", "score", "grade", "weight_pct"],
      "additionalProperties": false,
      "properties": {
        "name": { "type": "string" },
        "score": { "type": "integer", "minimum": 0, "maximum": 100 },
        "grade": { "type": "string" },
        "weight_pct": { "type": "integer", "minimum": 0, "maximum": 100 }
      }
    },
    "occurrence": {
      "type": "object",
      "required": ["node_id", "message"],
      "additionalProperties": true,
      "properties": {
        "node_id": { "type": "string" },
        "message": { "type": "string" },
        "selector": { "type": ["string", "null"] },
        "fix_suggestion": { "type": ["string", "null"] },
        "html_snippet": { "type": ["string", "null"] },
        "suggested_code": { "type": ["string", "null"] }
      }
    },
    "finding": {
      "type": "object",
      "required": [
        "rule_id",
        "wcag_criterion",
        "wcag_level",
        "dimension",
        "subcategory",
        "issue_class",
        "severity",
        "user_impact",
        "technical_impact",
        "score_impact",
        "aggregation_key",
        "title",
        "description",
        "occurrence_count",
        "priority_score",
        "occurrences"
      ],
      "additionalProperties": true,
      "properties": {
        "rule_id": { "type": "string" },
        "wcag_criterion": { "type": "string" },
        "wcag_level": { "type": "string" },
        "dimension": { "type": "string" },
        "subcategory": { "type": "string" },
        "issue_class": { "type": "string" },
        "severity": { "type": "string" },
        "user_impact": { "type": "string" },
        "technical_impact": { "type": "string" },
        "score_impact": {
          "type": "object",
          "required": ["base_penalty", "max_penalty", "scaling"],
          "additionalProperties": false,
          "properties": {
            "base_penalty": { "type": "number" },
            "max_penalty": { "type": "number" },
            "scaling": { "type": "string" }
          }
        },
        "aggregation_key": { "type": "string" },
        "title": { "type": "string" },
        "description": { "type": "string" },
        "occurrence_count": { "type": "integer", "minimum": 0 },
        "priority_score": { "type": "number" },
        "occurrences": {
          "type": "array",
          "items": { "$ref": "#/$defs/occurrence" }
        }
      }
    },
    "fixGuidance": {
      "type": "object",
      "required": ["rule_id", "title", "wcag_criterion", "severity", "occurrence_count", "problem", "user_impact", "typical_cause", "recommendation", "technical_note", "affected_selectors"],
      "additionalProperties": true,
      "properties": {
        "rule_id": { "type": "string" },
        "title": { "type": "string" },
        "wcag_criterion": { "type": "string" },
        "severity": { "type": "string" },
        "occurrence_count": { "type": "integer", "minimum": 0 },
        "problem": { "type": "string" },
        "user_impact": { "type": "string" },
        "typical_cause": { "type": "string" },
        "recommendation": { "type": "string" },
        "technical_note": { "type": "string" },
        "code_example": {
          "type": ["object", "null"],
          "properties": {
            "bad": { "type": "string" },
            "good": { "type": "string" }
          }
        },
        "affected_selectors": {
          "type": "array",
          "items": { "type": "string" }
        }
      }
    },
    "confidenceSignal": {
      "type": "object",
      "required": ["signal", "assessment"],
      "additionalProperties": false,
      "properties": {
        "signal": { "type": "string" },
        "assessment": { "type": "string" }
      }
    },
    "capabilitySignal": {
      "type": "object",
      "required": ["signal", "source", "confidence", "surfaces", "note"],
      "additionalProperties": false,
      "properties": {
        "signal": { "type": "string" },
        "source": { "type": "string" },
        "confidence": { "type": "string" },
        "surfaces": {
          "type": "array",
          "items": { "type": "string" }
        },
        "note": { "type": "string" }
      }
    },
    "normalizedReport": {
      "type": "object",
      "required": [
        "url",
        "wcag_level",
        "timestamp",
        "duration_ms",
        "nodes_analyzed",
        "score",
        "grade",
        "certificate",
        "findings",
        "severity_counts",
        "module_scores",
        "overall_score"
      ],
      "additionalProperties": true,
      "properties": {
        "url": { "type": "string" },
        "wcag_level": { "type": "string" },
        "timestamp": { "type": "string", "format": "date-time" },
        "duration_ms": { "type": "integer", "minimum": 0 },
        "nodes_analyzed": { "type": "integer", "minimum": 0 },
        "score": { "type": "integer", "minimum": 0, "maximum": 100 },
        "grade": { "type": "string" },
        "certificate": { "type": "string" },
        "findings": {
          "type": "array",
          "items": { "$ref": "#/$defs/finding" }
        },
        "severity_counts": { "$ref": "#/$defs/severityCounts" },
        "module_scores": {
          "type": "array",
          "items": { "$ref": "#/$defs/moduleScore" }
        },
        "overall_score": { "type": "integer", "minimum": 0, "maximum": 100 },
        "risk": { "$ref": "#/$defs/riskAssessment" }
      }
    },
    "riskAssessment": {
      "type": "object",
      "required": ["level", "critical_issues", "high_issues", "legal_flags", "blocking_issues", "summary"],
      "additionalProperties": false,
      "properties": {
        "level": { "type": "string", "enum": ["low", "medium", "high", "critical"] },
        "critical_issues": { "type": "integer", "minimum": 0 },
        "high_issues": { "type": "integer", "minimum": 0 },
        "legal_flags": { "type": "integer", "minimum": 0 },
        "blocking_issues": { "type": "integer", "minimum": 0 },
        "summary": { "type": "string" }
      }
    }
  }
}