About this project
The repository is the home of Shields.io, a service for concise, consistent and legible badges in SVG and raster format. The README says badges can be embedded in GitHub readmes or any other web page. It states the service supports dozens of continuous integration services, package registries, distributions, app stores, social networks, code coverage services and code analysis services. It says every month it serves over 1.6 billion images and is used by projects such as VS Code, Vue.js and Bootstrap. The repo hosts the Shields.io frontend and server code, an NPM library for generating badges called badge-maker, and the badge design specification. Examples listed include code coverage percentage, stable release version, package manager release, dependency status, static code analysis grade, SemVer version, weekly Liberapay donations, Python package downloads, Chrome Web Store extension rating and Uptime Robot uptime percentage. Users can make custom badges with a URL pattern. The README describes a quickstart where users browse a complete list of badges, search or browse categories, click a badge to fill in required data such as username or repo, optionally customize label and colors, then copy the badge URL or snippet for GitHub readmes or other web pages. Contribution is community-based through issues and pull requests; the README asks contributors to add tests when adding or changing a service, and points to a tutorial on adding a badge. It also references good first issues and a security policy. For development, the README lists installing Node 24, cloning the repository, running npm ci, npm start, and opening localhost:3000. Server source changes restart via nodemon, while frontend changes reload through the Docusaurus dev server; badge definitions are built before first server start and can be regenerated with npm run prestart or a restart. A badge can be debugged from the command line with npm run badge, including full URLs. Snapshot tests guard SVG or JSON output; deliberate output changes can be previewed with SNAPSHOT_DRY=1 npm run test:package and updated with SNAPSHOT_UPDATE=1. The server can optionally use Sentry and Prometheus. Self-hosting documentation is linked. Related projects include awesome-badges, a curated collection. The README gives history: b.adge.me was the original site, using 2013 code from gh-badges; the project merged with shields.io. The original badge specification was developed in 2013 and later redesigned in 2014; the old design is called plastic style and the new one flat style. Maintainers and alumni are listed, and the project is dual licensed under MIT and Apache 2.0. It also links to community funding and support.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.