Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Shields badge specification, website and default API server
JavaScript HTML Makefile
Branch: master
Failed to load latest commit information.
ass-stubs Fix tests to wait for server launch test stub to finish starting
logo Merge remote-tracking branch 'techtonik/master'
spec Fix Markdown formatting error
templates Fix corners in social-template
.buildpacks Node engine version information. Deployment files.
.gitignore ServerScript
.travis.yml make CI build faster
404.html Website: 404 page
CNAME CNAME for Add a link to C# port of Shield style badge lib.
Dockerfile Dockerized the service Switch coverage badge to new repo Files related to the switch to the shields repo.
Makefile Deploy vs. Deploy Heroku HTTPS badges
badge.js Capitalize social badges
colorscheme.json move colorscheme back to original location, add @ syntax to cli for s…
coverage.svg New coverage badge
favicon.png Move website to the repo's root.
gh-badge.js bin: support json format
index.html website: travis example change
load-logos.js GitHub logos for social badges
logo.svg Move website to the repo's root.
lru-cache.js Reduce cache size
package.json Use SPDX license, update redis library
phantomjs-svg2png.js Local font loading into SVG in Phantom.js
server.js Travis CI: use Content-Disposition
suggest.js Suggest twitter badges
svg-to-img.js Separated the LRU cache implementation.
test.js Fix tests to wait for server launch test stub to finish starting
try.html website: switch travis example to rust

Gratipay npm version build status

An image server for legible and concise information. Our Homepage | Twitter

Solving the problem

Many GitHub repositories sport badges for things like:

Travis CI

(build status)

Travis CI badge

(dependency checks)

Gemnasium badge
Code Climate

(static analysis)

Code Climate badge

(released gem version)

RubyGems badge

As you can see from the zoomed 400% versions of these badges above, nobody is (really) using the same badge file and at normal size, they're hardly legible. Worst of all, they're completely inconsistent. The information provided isn't of the same kind on each badge. The context is blurry, which doesn't make for a straightforward understanding of how these badges are relevant to the project they're attached to and what information they provide.

The Shields solution

As you can see below, without increasing the footprint of these badges, I've tried to increase legibility and coherence, removing useless text to decrease the horizontal length in the (likely) scenario that more of these badge thingies crop up on READMEs all across the land.

Badge design

This badge design corresponds to an old and now deprecated version which has since been replaced by beautiful and scalable SVG versions that can be found on


What kind of metadata can you convey using badges?

  • test build status: build | failing
  • code coverage percentage: coverage | 80%
  • stable release version: version | 1.2.3
  • package manager release: gem | 1.2.3
  • status of third-party dependencies: dependencies | out-of-date
  • static code analysis GPA: code climate | 3.8
  • SemVer version observance: semver | 2.0.0
  • amount of Gratipay donations per week: tips | $2/week

Services using the Shields standard


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

The assets in logo/ are trademarks of their respective companies and are under their terms and license.

Something went wrong with that request. Please try again.