:octocat: Unofficial github:buttons
See the codeGet started quickly with github:button configurator.
import { render } from 'github-buttons'
// export function render(options: object, callback: (el: HTMLElement) => void): void;
render(options, function (el) {
document.body.appendChild(el)
})
// export function render(anchor: HTMLAnchorElement, callback: (el: HTMLElement) => void): void;
render(anchor, function (el) {
anchor.parentNode.replaceChild(el, anchor)
})
<a> element.options object.hrefstring'#'Assign href attribute (GitHub link) for button.
titlestringundefinedAssign title attribute for button.
data-iconstring'octicon-mark-github'Set icon on button. A subset of Octicons is bundled.
data-color-schemestringundefinedDefine a mapping of system color scheme to widget color scheme in css-like syntax.
This is an opt-in feature since version >=2.3.0. It means if data-color-scheme is undefined, it would still behave like version <2.3.0, where light color scheme is used under all conditions.
Once data-color-scheme is set to a string, it will inherit the default mapping: no-preference: light; light: light; dark: dark;.
no-preference: light; means when system has no preference on color scheme, light color scheme will be used.light: light; means when system prefers light color scheme, light color scheme will be used.dark: dark; means when system prefers dark color scheme, dark color scheme will be used.User declarations would override the default. For example:
data-color-scheme="".data-color-scheme="no-preference: dark;".data-color-scheme="dark: light;".data-color-scheme="no-preference: dark; light: dark;".A single word can be used to force the color scheme everywhere since version >=2.11.0. For example:
data-color-scheme="light".data-color-scheme="dark".data-sizestringundefinedSet button size. Possible values are undefined and 'large'.
data-show-countbooleanfalseShow a dynamic count based on button type (detected from href):
https://github.com/:user (follow)https://github.com/:user/:repo (star)https://github.com/:user/:repo/subscription (watch)https://github.com/:user/:repo/fork (fork)https://github.com/:user/:repo/issues (issues)https://github.com/:user/:repo/issues/new (issues)Tailing slash, query string, and hash in the href won't affect type detection:
https://github.com/:user/ (follow)https://github.com/:user?tab=repositories (follow)https://github.com/:user/:repo#readme (star)https://github.com/:user/:repo/#readme (star)data-textstringundefinedSet button text. When button is generated from <a> element and data-text is undefined, the button text will be anchor's textContent.
aria-labelstringundefinedSet aira-label for button.
See LICENSE.
1,190 followers · starred Dec 2018
267 followers · starred Dec 2016
275 followers · starred Aug 2025
238 followers · starred May 2020
:octocat: Unofficial github:buttons
See the codeGet started quickly with github:button configurator.
import { render } from 'github-buttons'
// export function render(options: object, callback: (el: HTMLElement) => void): void;
render(options, function (el) {
document.body.appendChild(el)
})
// export function render(anchor: HTMLAnchorElement, callback: (el: HTMLElement) => void): void;
render(anchor, function (el) {
anchor.parentNode.replaceChild(el, anchor)
})
<a> element.options object.hrefstring'#'Assign href attribute (GitHub link) for button.
titlestringundefinedAssign title attribute for button.
data-iconstring'octicon-mark-github'Set icon on button. A subset of Octicons is bundled.
data-color-schemestringundefinedDefine a mapping of system color scheme to widget color scheme in css-like syntax.
This is an opt-in feature since version >=2.3.0. It means if data-color-scheme is undefined, it would still behave like version <2.3.0, where light color scheme is used under all conditions.
Once data-color-scheme is set to a string, it will inherit the default mapping: no-preference: light; light: light; dark: dark;.
no-preference: light; means when system has no preference on color scheme, light color scheme will be used.light: light; means when system prefers light color scheme, light color scheme will be used.dark: dark; means when system prefers dark color scheme, dark color scheme will be used.User declarations would override the default. For example:
data-color-scheme="".data-color-scheme="no-preference: dark;".data-color-scheme="dark: light;".data-color-scheme="no-preference: dark; light: dark;".A single word can be used to force the color scheme everywhere since version >=2.11.0. For example:
data-color-scheme="light".data-color-scheme="dark".data-sizestringundefinedSet button size. Possible values are undefined and 'large'.
data-show-countbooleanfalseShow a dynamic count based on button type (detected from href):
https://github.com/:user (follow)https://github.com/:user/:repo (star)https://github.com/:user/:repo/subscription (watch)https://github.com/:user/:repo/fork (fork)https://github.com/:user/:repo/issues (issues)https://github.com/:user/:repo/issues/new (issues)Tailing slash, query string, and hash in the href won't affect type detection:
https://github.com/:user/ (follow)https://github.com/:user?tab=repositories (follow)https://github.com/:user/:repo#readme (star)https://github.com/:user/:repo/#readme (star)data-textstringundefinedSet button text. When button is generated from <a> element and data-text is undefined, the button text will be anchor's textContent.
aria-labelstringundefinedSet aira-label for button.
See LICENSE.
1,190 followers · starred Dec 2018
267 followers · starred Dec 2016
275 followers · starred Aug 2025
238 followers · starred May 2020