Skip to content

ngryman/badge-size

Repository files navigation

badgesize.io now has a new home

This project img.badgesize.io is no longer maintained or supported from this repo, please use @nevware21/badgesize for all status, feature and support requests.

badge-size (previous)

Displays the size of a given file in your repository.

badge-size allows you to display in real time the size of a given file which lives in your repository. The size is always the one of your last pushed commit.

It is mainly designed for front-end library authors that want to advertise the weight of their builds to their users. But you can use it for any other purpose of course ✌️.

Examples

Badge URL
Normal size
Gzipped size
Brotli size
Custom label
PNG format

Usage

It works like any other badge service you may know and it's configurable in the image url itself. Here is the general pattern of a typical badge-size url:

https://img.badgesize.io/:filepath[.svg|png|jpg][?compression=gzip|brotli][&label=string][&max=string][&softmax=string]

:filepath

Relative URL of file on GitHub of any absolute URL if hosted elsewhere.

The format of the GitHub URL is the same as when you browse it in the source explorer, minus blob/ part. Here is its typical form:

:user/:repo/:branch/:path

For example if I want to point to this repository index.js, it would be:

https://github.com/ngryman/badge-size/master/index.js

Note that the branch name is mandatory.

[.svg|png|json]

Optional image format. By default svg is used.

When json is used, the response is a JSON object of the following shape:

{
  "color": "44cc11",
  "originalSize": 997,
  "prettySize": "997 B",
  "size": 997
}

[?compression=gzip|brotli]

Optional compression format to measure. It's useful if you want to advertise the true size your file would take on the wire, assuming the server has gzip or brotli compression enabled.

[&label=string]

Optional text to display in the badge instead of size / gzip size / brotli size.

[&color=string]

Optional background color. By default it's brightgreen.
You can specify hexadecimal colors, without the dash (i.e bada55) or one of the following named colors:

[&style=string]

Optional style. By default it's flat.
You can specify one of the following:

[&max=string] [&softmax=string]

Optional size limits in bytes.
Max is a hard limit. Exceeding this will generate a red badge.
If softlimit is provided (in addition to max) and the file size falls within the range of max and softmax, a yellow badge will be generated.
This setting will override the color option in the above two scenarios.

https://img.badgesize.io/:filepath?max=100000&softmax=200000

Contributors

Generated with contributors-faces.

Other projects

  • Fauda: configuration made simple.
  • Reading Time: Medium's like reading time estimation.
  • Commitizen Emoji: Commitizen adapter formatting commit messages using emojis.

License

MIT © Nicolas Gryman

About

🍻 Displays the size of a given file in your repository.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published