README badges

Shield-style SVG badges that show your skill's current SkillOx grade — same visual language as shields.io, drops in next to your CI / coverage / npm badges. Updates within five minutes of every re-scan.

Endpoints

Both also accept the URL without the .svg extension. The skill-name path component is the same name used at /c/<skill-name>, URL-encoded.

Markdown

[![SkillOx grade](https://api.skillox.io/badge/<skill-name>.svg)](https://skillox.io/c/<skill-name>)

For the numeric-score badge:

[![SkillOx score](https://api.skillox.io/badge/score/<skill-name>.svg)](https://skillox.io/c/<skill-name>)

HTML

<a href="https://skillox.io/c/<skill-name>">
  <img src="https://api.skillox.io/badge/<skill-name>.svg" alt="SkillOx grade" />
</a>

reStructuredText (Sphinx, etc.)

.. image:: https://api.skillox.io/badge/<skill-name>.svg
   :target: https://skillox.io/c/<skill-name>
   :alt: SkillOx grade
Every public Skill Report Card has a Embed badge panel with the snippets pre-filled and copy-paste buttons. Go to /c/<your-skill> on skillox.io to grab them.

Caching

Long-tail skills barely change grade week-over-week, so the short TTL is fine. If you need to bust the cache (e.g. after a re-scan), append ?v=timestamp to the badge URL in your README.

Unknown skills

If we haven't scanned that skill name yet, the badge renders as a gray skillox | unknown — never errors. To get a grade, either submit it for scanning via the home page or wait for the next crawler pass to pick it up.