Github url


by badges

badges /shields

Concise, consistent, and legible badges in SVG and raster format

11.3K Stars 3.1K Forks Last release: Not found Creative Commons Zero v1.0 Universal 4.2K Commits 9 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

build statusservice-test statuscoverageTotal alertscommits to be deployedchat on Discordfollow on Twitter

This is home to, a service for concise, consistent, and legible badges in SVG and raster format, which can easily be included in GitHub readmes or any other web page. The service supports dozens of continuous integration services, package registries, distributions, app stores, social networks, code coverage services, and code analysis services. Every month it serves over 470 million images.

This repo hosts:


  • code coverage percentage: coverage
  • stable release version: version
  • package manager release: gem
  • status of third-party dependencies: dependencies
  • static code analysis grade: codacy
  • SemVer version observance: semver
  • amount of Liberapay donations per week: receives
  • Python package downloads: downloads
  • Chrome Web Store extension rating: rating
  • Uptime Robot percentage: uptime

Make your own badges!(Quick example:


Browse a complete list of badges.


Shields is a community project. We invite your participation through issues and pull requests! You can peruse the contributing guidelines.

When adding or changing a service please add tests.

This project has quite a backlog of suggestions! If you're new to the project, maybe you'd like to open a pull request to address one of them:

GitHub issues by-label

You can read a tutorial on how to add a badge.


  1. Install Node 8 or later. You can use the package manager of your choice. Tests need to pass in Node 8 and 10.
  2. Clone this repository.
  3. Run
    npm ci
    to install the dependencies.
  4. Run
    npm start
    to start the badge server and the frontend dev server.
  5. Open
    to view the frontend.

When server source files change, the badge server should automatically restart itself (using nodemon). When the frontend files change, the frontend dev server (

gatsby dev

) should also automatically reload. However the badge definitions are built only before the server first starts. To regenerate those, either run

npm run defs

or manually restart the server.

To debug a badge from the command line, run

npm run badge -- /npm/v/nock

. It also works with full URLs like

npm run badge --



npm run debug:server

to start server in debug mode.This recipe shows how to debug Node.js application in VS Code.

Shields has experimental support for Gitpod, a pre-configured development environment that runs in your browser. To use Gitpod, click the button below and sign in with GitHub. Gitpod also offers a browser add-on, though it is not required. Please report any Gitpod bugs, questions, or suggestions in issue#2772.

Edit with Gitpod

Snapshot tests ensure we don't inadvertently make changes that affect the SVG or JSON output. When deliberately changing the output, run

SNAPSHOT\_DRY=1 npm run test:js:server

to preview changes to the saved snapshots, and

SNAPSHOT\_UPDATE=1 npm run test:js:server

to update them.

The server can be configured to use Sentry (configuration) and Prometheus (configuration).

Daily tests, including a full run of the service tests and overall code coverage, are run via badges/daily-tests.

Hosting your own server

There is documentation about hosting your own server.

History was the original website for this service. Heroku back then had a thing which made it hard to use a toplevel domain with it, hence the odd domain. It used code developed in 2013 from a library calledgh-badges, both developed by Thaddée Tyl. The project merged with by making it use the code and closed

The original badge specification was developed in 2013 byOlivier Lacan. It was inspired by the Travis CI and similar badges (there were a lot fewer, back then). In 2014 Thaddée Tyl redesigned it with help from a Travis CI employee and convinced everyone to switch to it. The old design is what today is called the plastic style; the new one is the flat style.

You can read more about the project's inception,the motivation of the SVG badge specification, andthe specification itself.

Project leaders




Related projects


All assets and code are under the CC0 LICENSE and in the public domain unless specified otherwise.

The assets in


are trademarks of their respective companies and are under their terms and license.


Thanks to the people and companies who donate money, services or time to keep the project running.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.