Skip to main content

Score Badges.

Embeddable SVG badges that display your latest scan score and grade. Drop them into your README, wiki, or any page that renders Markdown.

Badge URL format

Each badge is a dynamically generated SVG tied to a specific scan:

      https://appvet.dev/badge/SCAN_ID.svg
    

Replace SCAN_ID with the ID of your scan (e.g. scan_abc123).

Markdown snippet

Copy and paste this into your README to display a badge that links to the full report:

      [![AppVet Score](https://appvet.dev/badge/SCAN_ID.svg)](https://appvet.dev/report/SCAN_ID)
    

Badge states

State Appearance
completed Shows the scan type and grade with numeric score, color-coded by range (e.g. "AppVet Security | A- 84").
scanning Gray badge reading "AppVet | scanning..." while the scan is in progress.
failed Red badge reading "AppVet | failed" when the scan could not complete.
not found Gray badge reading "AppVet | not found" when the scan ID does not exist.

Score colors

The badge color reflects the score range so you can tell at a glance how healthy the site is:

Score Color Example
90 – 100 Green AppVet Security | A+ 96
70 – 89 Teal AppVet Perf | A- 84
50 – 69 Orange AppVet A11y | C 55
Below 50 Red AppVet SEO | F 18

How to get the badge

  1. Open any completed scan report on appvet.dev.
  2. Click the Badge button in the report header.
  3. Copy the Markdown snippet from the popup.
  4. Paste it into your README or documentation.

Caching

Badge SVGs are served with a 1-hour public cache (Cache-Control: public, max-age=3600). After you re-scan, the badge will update within an hour. GitHub's image proxy (camo.githubusercontent.com) respects these headers, so README badges will refresh automatically.

Example badges

Here is what each badge state looks like in practice:

Badge Description
AppVet Security A+ 96 Security scan, score 90+, green.
AppVet Perf A- 84 Performance scan, score 70-89, teal.
AppVet A11y C 55 Accessibility scan, score 50-69, orange.
AppVet SEO F 18 SEO scan, score below 50, red.
AppVet scanning... Scan in progress.
AppVet failed Scan failed.

Next steps

  • GitHub Action — automatically scan on every pull request.
  • Webhooks — get notified when scans complete to trigger badge updates.
  • API Reference — retrieve scan results programmatically.