🦌 Badges generator from dotfiles for any markdown
Tool to help automate your badges of shields.io, badgen.net, fury.io and snyk.io from .all-shieldsrc dotfile for your markdown files. You can use Liquid variables like {{name}} or {{version}} which refer to your package.json.
Inspired by all-contributors-cli
💡 Features
- [✔️] Easy to use
- [✔️] MIT License
- [✔️] Support: shields.io
- [✔️] Support: fury.io
- [✔️] Support: snyk.io
- [✔️] Support: badgen.net
- [✔️] Full customizations!
- [✔️] Liquid Variables
- [✔️] Tool to help automate your badges on markdown.
- [✔️] Badges generator from dotfiles for any markdown
👔 Screenshot
🚀 Installation
- In your node project run:
npm install @ptkdev/all-shields-cli --save-dev - In your
package.jsonadd script:
...
"scripts": {
"all-shields-cli": "all-shields-generate"
}
...
- Create
.all-shieldsrcand paste sample:
{
"files": [
"README.md"
],
"shields": [
{
"id": "my-badges",
"badges": [
{
"url": "https://www.npmjs.com/package/@ptkdev/all-shields-cli",
"color": "lightgray",
"label": "package name",
"title": "package name",
"message": "all-shields-cli",
"style": "flat",
"logo": "",
"platform": "shields"
}
]
}
]
}
- Add in your
README.mdthe html comment (my-badgesisidfrom the previous step):
<!-- all-shields/my-badges:START -->
<!-- all-shields/my-badges:END -->
- Run
npm run all-shields-cli
See folder examples, run with node example.js. Below is available a description of options values.
🔑 Liquid variables
In your .all-shieldsrc dotfile you can use liquid variables like {{name}} or {{version}} which refer to your package.json. Key of package.json is name of liquid variable {{key_from_package.json}}
🐶 Work with Husky
- In your node project run:
npm install husky --save-dev(docs) - You can use pre-commit hooks with husky:
...
"husky": {
"hooks": {
"pre-commit": "npm run all-shields-cli"
}
}
...
🧰 Options: Badges Array
| Parameter | Description | Values | Default value | Available on platforms | Available since |
|---|---|---|---|---|---|
| platform | Define platform |
discord / shields / fury / snyk / badgen
|
shields |
v1.0.0 | |
| custom | Set custom string of image url (appended after domain url of badge service) | string |
empty |
discord, shields, fury, snyk, badgen
|
v1.1.0 |
| url | If you click on badge open this url | URI |
empty |
discord, shields, fury, snyk, badgen
|
v1.0.0 |
| color | Badge hexcode color (right side). NOTE: Overwrited if custom is set. |
string / hexcode
|
lightgray |
shields, badgen
|
v1.0.0 |
| label | Badge text (left side). NOTE: Overwrited if custom is set. |
string |
empty |
shields, badgen
|
v1.0.0 |
| title | Mouse hover alt text | string |
empty |
discord, shields, fury, snyk, badgen
|
v1.0.0 |
| message | Badge text (right side). NOTE: Overwrited if custom is set. |
string |
empty |
discord, shields, fury, snyk, badgen
|
v1.0.0 |
| style | Look of badge. NOTE: Overwrited if custom is set. |
plastic / flat / flat-square / for-the-badge / social
|
flat |
shields |
v1.0.0 |
| logo | Show logo (left side). NOTE: Overwrited if custom is set. |
shields: bitcoin , dependabot , discord , gitlab , npm , paypal , serverfault , stackexchange , superuser , telegram , travis and more on docs. badgen: airbnb, apple, appveyor, atom, awesome, azure, azurepipelines, bitcoin, buymeacoffee, chrome, circleci, cocoapods, codacy, codebeat, codeclimate, codecov, codeship, commonwl, deepscan, dependabot, discord, dockbit, docker, eclipse, firefox, flow, git, github, gitlab, gitter, googleplay, graphql, haskell, jsdelivr and more on docs
|
empty |
shields, badgen
|
v1.0.0 |
| server_id | if platform is discord, set your discord server_id | DISCORD_SERVER_ID |
empty | discord |
v1.0.0 |
💫 License
- Code and Contributions have MIT License
- Images and logos have CC BY-NC 4.0 License (Freepik Premium License)
- Documentations and Translations have CC BY 4.0 License


Top comments (0)