GitHub badges in SVG format #150

Closed
mathiasbynens opened this Issue Jan 2, 2014 · 29 comments

Projects

None yet
@mathiasbynens
Member

A lot of GitHub repositories have badges like these in their README:

Coveralls
Gittip
Travis CI
Generic

There are several services that can be used to serve these badge images based on some URL parameters, e.g. shields.io (repo).

Currently these badges are all bitmaps (usually in JPG or PNG format). It would be nice to have them in SVG format, for the following reasons:

  • vector images still look nice on high-resolution displays
  • hackability; creating a badge with different colors or text is just a matter of editing the SVG file in a text editor
  • likely, bandwidth savings (for the services that serve these badge images and for end users)

TODO

  • Remake these images as a static example SVG file
  • Convince an existing badge service to serve SVG responses instead of the bitmaps they’re sending out now (optionally based on a new URL parameter)

Any SVG gurus/ninjas/unicorns out there that want to give the first task a try?

@bordoni
bordoni commented Jan 2, 2014

WoW! Loved the idea. 👍

@kulturbande

a big 👍

@stefanjudis

👍

@mathiasbynens
Member

@fhemberger Awesome! It looks like the generated code in that repo could be improved/cleaned up a little bit, but other than that it looks like the first task on the TODO list is as good as finished :)

@espadrine

Tried something quick here: https://thefiletree.com/gh-badges/build-passed.svg

However, in stable Firefox, letter-spacing doesn't seem to work.

@sindresorhus
Member

👍

Relevant: badges/shields#80

@espadrine

I think I have something competitive here: [gist] https://gist.github.com/espadrine/8218740
(Not just my work, not sure who helped, hope everyone is ok with making this CC0.)

Fork this gist to add images!

@espadrine

Quick size comparison:

FileSize (bytes)
build-passed.png1842
build-passed.svg1018
build-passed.svgz381
@espadrine espadrine referenced this issue in travis-ci/travis-ci Jan 2, 2014
Closed

make build results pngs less blurry #630

@mathiasbynens
Member

@espadrine Nice! (I was the one who helped a little bit, but really you really did all the hard work :))

How about setting up a repository for this instead of a gist? Would make it a better place to point to, as we could add documentation for badge services (i.e. how to change width attributes based on the length of the input string on the back-end), etc.

@s10wen
s10wen commented Jan 2, 2014

Any reason these couldn't simply be HTML / CSS?

@mathiasbynens
Member

@simonowendesign Because <img src=badge.html> doesn’t work (assuming badge.html really is an HTML document).

@mathiasbynens
Member

@espadrine created a repo for the SVG badge boilerplate/template: https://github.com/espadrine/gh-badges

Feedback and improvements on the code are welcome there!

@s10wen
s10wen commented Jan 2, 2014

I get that if an image tag has been previously used SVG would be the right way to go, but wondering if an imageless alternative would be beneficial as well going forward?

@mathiasbynens
Member

@simonowendesign <iframe>s are not supported by GitHub Markdown.

@philippbosch

@simonowendesign Everything but an image makes embedding in Markdown or reStructuredText (that's what most READMEs on Github are written in) unnecessarily complicated. Images can be embedded like this in Markdown:

![Travis CI](http://img.shields.io/travis-ci/rails/rails.png)

Travis CI

"imageless" would mean adding HTML and CSS to a Markdown document which is ugly. Or using <iframe>s – even uglier.

@mathiasbynens
Member

"imageless" would mean adding HTML and CSS to a Markdown document which is ugly.

Not just ugly, but (more importantly) it would also mean that the content wouldn’t be dynamic anymore.

@s10wen
s10wen commented Jan 2, 2014

Gotcha, and guess something like a button styling for Markdown would be overkill?

@mathiasbynens
Member

Definitely :) Also it would have the same issue: in this case, the content must come from a third party server (not from the README source itself).

@mathiasbynens
Member

Good news! This is now pretty much solved by http://gh-badges.herokuapp.com/ (repo: https://github.com/espadrine/gh-badges).

There are just a few annoying browser bugs in the way of using these beautiful SVG badges: badges/gh-badges#5

@espadrine espadrine referenced this issue in badges/shields Jan 6, 2014
Closed

Inline SVG for Retina #80

@whit537
whit537 commented Jan 6, 2014

Cross-post from badges/shields#80 (comment) :

Okay, so we have http://shields.io/, http://badgr.co/, and now http://b.adge.me/ all doing basically the same thing. We've already got http://badgr.co/ well on it's way to being folded into http://shields.io/. I think it's in the best interest of the open source community as a whole to do the same with http://b.adge.me/. In other words, we should add SVG support to http://shields.io/.

@hhfrancois

Hi, thank for the service.
your service Have it a max delivery ?
Cause with 7 badges in my site, I have an error.

@espadrine

@hhfrancois Thanks for telling us! We hope we fixed it. Tell us if it works better.

As a side-node, it may be unstable this week, but will be better next week.

@hhfrancois

@espadrine Thank for the response.

@svoop
svoop commented Jan 12, 2016

@espadrine I don't find a better place to ask this: How about adding beerpay.io as well?

@espadrine

@svoop Don't hesitate to create an issue on the project!

@calidion

hi, all
the service is very unstable.

i can easily get unresponsive state.
can this be improved?

@niksmac
niksmac commented Jun 15, 2016

here from here

@cbanowsky
cbanowsky commented Dec 8, 2016 edited

the custom badges are fun if nothing else:
like this one

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment