Home of badgen.net, fast badge generating service.
The Badgen Story
That's a service, that's a library, hooorey! - @tunnckoCore
Epic work on Badgen! Porting the @dependabot badges over to it now.
Then, logically, Badgen Service was born. I had a good time with shields.io, but as time goes by Shields gets slower, leaves more and more broken badges in READMEs. Badgen is trying to be a fast alternative with simplicity and flexibility. Its codebase is simple (2K LoCs vs Shields' 22K LoCs), well structured and fun to develop - it is pretty easy to add badge(s) for new service(s).
In the beginning, I was considering both Now and Google Cloud Functions. Then Zeit announced Now CDN on the same day as badgen.now.sh (the PoC of Badgen Service)'s reveal, what a fate! Cloudflare powered Now CDN is a perfect choice for such service, caching and scalability in simplicity. Badgen is the fastest possible badge generating service out there. It's fast, it's reliable, it's globally distributed and cached, thanks to Now.
At the time of badgen.now.sh's reveal, it had only four live badges as demonstrations. Since then, thanks to awesome people's help, Badgen keeps getting better at a fast pace. Welcome to join us, let's build the best badge service in the universe
- Using badgen library to generate svg on the fly => fast & stateless
- Hosted on Now, serving behind Now CDN => faster & reliable
- Cache less than 4 minutes => fresh & hot
- Three endpoints in one server
- Two badge types
- static badge - URL defined badge (subject, status, color)
- live badge - show live status from 3rd party services
- Builtin Icons
- see badgen-icons
We are using StandardJS style, make sure you have ESLint/Standard plugin on your editor and have autofix enabled.
Add live badge
If a service you wish to have is still missing here, we welcome new contributions. Basically, you need to add a file in
libs/live-fns/[name-of-service].js and that's it. Take crates as an example:
- libs/live-fns/crates.js - main function for crates
- libs/live-fns/_index.js - index of all live-badges
- libs/index.md - the
To ensure that your addition is working correctly start the development server with
npm run dev.
YOU MAY NOT NEED TO MAKE PULL REQUEST
Deploy to Now
Badgen is stateless (does not rely on DB service). Deploy your own instance to Now with one single command:
now amio/badgen-service -e GH_TOKEN='' -e TRACKING_GA='' -e SENTRY_URI=''
2018-08-09T04:16:30.947Z #npm dt/chalk: 160.519ms 2018-08-09T04:16:31.195Z #npm dependents/chalk: 365.045ms 2018-08-09T04:16:51.252Z #david dep/olstenlarck/eslint-config-esmc: 445.893ms
And that's all. No tracking of end users.
Thank you to all our backers!
Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]