Skip to main content
Developers/Sign in with Avonao ID

Button kit

The official button as a plain link: one stylesheet and a few lines of HTML. There is an SVG of every variant too. Nothing here needs JavaScript.

Try it

Pick a variant. The preview is the real button, and the snippets below it are for exactly what you see.

This is the real button. Tab to it to see the focus ring; the link does nothing here.

Theme
Size
Wording
Preview page

A path on your site, or an https:// address. Never the /authorize URL of Avonao ID.

<a class="avid-btn avid-btn--md avid-btn--dark" href="/api/auth/avonao/start">
  <img class="avid-btn__icon" src="https://id.avonao.com/brand/avonao/avonao-id-icon-128.png" alt="" width="20" height="20">
  <span>Sign in with Avonao ID</span>
</a>

Add it to your page

  1. Load the stylesheet once, in the <head> of every page that has the button:
    html
    <link rel="stylesheet" href="https://id.avonao.com/avonao-id/button-kit/avonao-id-button.css">
  2. Paste the button where you want it. This is the default: dark, medium, Sign in with Avonao ID.
    html
    <a class="avid-btn avid-btn--md avid-btn--dark" href="/api/auth/avonao/start">
      <img class="avid-btn__icon" src="https://id.avonao.com/brand/avonao/avonao-id-icon-128.png" alt="" width="20" height="20">
      <span>Sign in with Avonao ID</span>
    </a>
  3. Point href at your own sign-in route (/api/auth/avonao/start in the Quickstart), which builds the request with state and PKCE and sends the member on. The button never links to Avonao ID's /authorize directly.

If your Content Security Policy is strict, allow https://id.avonao.com in style-src and img-src, or host both files yourself: copy avonao-id-button.css and the icon from Files to your server and change the two URLs. Tick "Host the files myself" above to get the snippets for that.

Using React? The markup is the same: the React / JSX tab has it.

All variants

Every theme and size, with the wording Sign in with Avonao ID, as a labeled button and as an icon-only button. Copy HTML gives the markup of that one. The other wordings (Continue with Avonao ID, Sign up with Avonao ID) are in the playground above and in the files below. These previews do nothing when clicked.

Dark

For light pages. The default.

Small · 32 px
Medium · 40 px
Large · 48 px

Light

For dark pages.

Small · 32 px
Medium · 40 px
Large · 48 px

Outline

Takes the text color of your page, so it fits on light and dark pages alike.

Small · 32 px
Medium · 40 px
Large · 48 px

Sizes and colors

Button sizes
SizeClassHeightIconLabelSide paddingGapMin width
Smallavid-btn--sm32 px16 px14 px, 60012 px8 px180 px
Mediumavid-btn--md40 px20 px15 px, 60016 px10 px220 px
Largeavid-btn--lg48 px24 px16 px, 60020 px12 px260 px

Icon-only buttons are squares as high as the size they use (32, 40 or 48 px). Corners are 8 px; add avid-btn--pill for fully rounded ones.

Colors of each theme
TokenDarkLightOutline
--avid-btn-bg#111111#fffffftransparent
--avid-btn-fg#ffffff#111111currentColor
--avid-btn-border#111111#d0d0d0currentColor
--avid-btn-bg-hover#2a2a2a#f4f4f4rgba(127,127,127,.12)
--avid-btn-focus#2563eb#2563eb#2563eb

Hover changes only the background. Pressed adds a 1 px inset shadow. The focus ring is a 2 px outline, offset by 2 px, in --avid-btn-focus. A disabled button is at 50 % opacity.

Customize

Colors, corners and font are custom properties. Set them on :root to change every button (a color set there applies to all three themes), or on a wrapper or the button itself to change some. After a change, check the contrast again: at least 4.5:1 for the label, and 3:1 for the border and the focus ring.

your stylesheet
/* every button on the page */
:root {
  --avid-btn-radius: 12px;
  --avid-btn-font: "Inter", system-ui, sans-serif; /* default: the system font */
}

/* one button, in your brand color */
.checkout .avid-btn {
  --avid-btn-bg: #0b3d91;
  --avid-btn-border: #0b3d91;
  --avid-btn-bg-hover: #0a2f70;
}

Do not recolor, rotate, crop or animate the icon, and keep the wording. The Brand rules list what is allowed.

Files

Served from https://id.avonao.com/avonao-id/button-kit/. Download any of them one by one; there is no archive.

Kit files
FileWhat it is
avonao-id-button.cssThe stylesheet. Self-contained: no framework, no JavaScript, no fonts or images loaded from it.
avonao-id-icon-128.pngThe Avonao ID icon (the pigeon) at 128 px, for the <img> inside the button. It shows crisp at up to 64 px.
snippets.htmlEvery variant as copy-paste HTML, without JavaScript.
README.mdHow to use the kit in two minutes.

SVG, one per variant

Each SVG is a complete button, for a place where you cannot load the stylesheet (an email, a slide, a design file). They are not meant for a web page: the HTML button is a real link, keeps the focus ring and scales with text size. The files are in /avonao-id/button-kit/svg/.

SVG files by wording, theme and size
WordingThemeSmallMediumLarge
Sign inDarksmmdlg
Sign inLightsmmdlg
Sign inOutlinesmmdlg
ContinueDarksmmdlg
ContinueLightsmmdlg
ContinueOutlinesmmdlg
Sign upDarksmmdlg
Sign upLightsmmdlg
Sign upOutlinesmmdlg
Icon onlyDarksmmdlg
Icon onlyLightsmmdlg
Icon onlyOutlinesmmdlg

Accessibility

  • It is a link (<a href>), so the keyboard, screen readers and open in new tab work without any code.
  • The icon has alt="" because the label carries the meaning. An icon-only button needs aria-label with the full wording; the snippets include it.
  • On touch screens the clickable area is at least 44 by 44 px, and the layout does not move.
  • The focus ring shows for the keyboard, not for the mouse. Colors keep the contrast above. Animation is a 0.12 s color fade and is off for people who ask for reduced motion. In Windows high-contrast mode the button keeps a visible edge.
  • A disabled link has no href, is out of the tab order and has aria-disabled="true". Use it for the moment between a click and the page change, not as a permanent state.
Uma conta
Avonao ID

Um só Avonao ID. Todas as plataformas. Você decide.

Crie sua conta em um minuto com uma passkey e depois conecte as plataformas que você usa.

Conta Avonao ID