A reaction badge for your README

A Star is a bookmark. Web Reactions gives your repo a real emoji reaction, and this badge puts the live count at the top of your README — the first thing every visitor sees.

1.2k1.2k

Your readers do the reacting

You stop chasing engagement — they bring it

You don't pick which repos get attention; the person who owns each one recruits it. Drop the badge in your README and every reader has a one-click reason to react, the same way a Star button quietly turns readers into stargazers. Each badge becomes its own little pocket of activity.

The real breakdown, not one flat number

The badge shows the top three reactions and the running total (🔥 for the release everyone loved, 🤔 for the one that confused people) instead of a single counter that has to mean "I use this", "read later", and "this worries me" all at once. It's the reaction GitHub never gave the repository itself.

Build a custom badge

Enter your repo, pick a style, and copy the snippet in the format your README uses. The badge links to a one-click React page — readers with the extension react in place, everyone else lands on install.

Preview Style preview — your live badge shows real counts.

Every field maps to a query param — ?style=, ?label=, ?color=, ?theme= — so you can hand-edit the URL too. Works for GitLab and the other supported sites (pick one above). Prefer the shields.io look? Point their endpoint at the badge's .json instead of the .svg.

How it works

Free, and staying that way

The badge costs nothing — no account, no API key, no rate card. It reads counts that are already public, so there's nothing to meter; embed as many as you like. The planned data API for bulk counts is the paid product — a badge on your README is not.

Live, with a small delay

The badge reads the same public counts the extension shows on your repo, but it's cached hard, at our edge and again by GitHub's own image proxy, so even a README with thousands of views a day barely touches our servers. The tradeoff is that the number trails the live count by a few minutes to around half an hour, and GitHub's cache can hold it a little longer. For an ambient badge that's exactly right; the real-time number is always in the extension itself.

Nothing to install to display it

Readers don't need the extension to see the badge — it's just an image. They need it to add a reaction, which keeps the count honest. The link on the badge is where the curious ones start.

Put a reaction badge on your repo

Install the extension, open your own repo, and leave the first reaction. Then add the badge to your README and let your readers take it from there.