Jamdesk Documentation logo

Icons

Jamdesk ships with Font Awesome Pro. Use icons in cards, callouts, sidebar navigation, and inline text with multiple style variants.

Jamdesk ships with Font Awesome Pro: thousands of icons, both free and pro, ready to use.

Using Icons in Components

Most components accept an icon prop with a Font Awesome icon name:

<Card title="Quickstart" icon="rocket" href="/quickstart">

  Learn how to set up your documentation site.

</Card>
Quickstart

Learn how to set up your documentation site.

Icons work in Cards, Accordions, Tabs, and navigation items.

The Icon Component

Use the <Icon> component to display icons inline with text:

<Icon icon="check" color="green" /> Task completed

Task completed

Icon Props

PropTypeDefaultDescription
iconstringrequiredFont Awesome icon name
colorstring-Named color (red, blue, green) or hex (#FF5733)
sizenumber16Size in pixels

Examples

<Icon icon="star" color="yellow" size={24} />
<Icon icon="circle-check" color="green" />
<Icon icon="triangle-exclamation" color="orange" />
<Icon icon="heart" color="#E91E63" size={20} />

Finding Icons

Browse the full icon library at fontawesome.com/icons. Search for what you need, then use the icon name in your docs.

When searching on Font Awesome's site, look for the icon name shown below the icon (e.g., "circle-check", "arrow-right"). Use that exact name in your docs.

Brand Icons

Technology and company logos are automatically detected and rendered correctly:

<Icon icon="github" size={24} />
<Icon icon="discord" size={24} />
<Icon icon="react" size={24} />
<Icon icon="python" size={24} />

Common brand icons include:

CategoryIcons
Socialgithub, discord, twitter, linkedin, youtube, slack
Languagespython, react, vuejs, angular, node-js, php, java
Servicesaws, docker, google, microsoft, stripe, shopify

Icon Variants

Font Awesome icons come in multiple style variants that control visual weight. Specify the variant by prefixing the icon name.

Available Variants

VariantPrefixExampleDescription
Solidsolid/solid/starFilled icons, heaviest weight
Regularregular/regular/starOutlined icons, medium weight
Lightlight/light/starThinner outlined icons
Thinthin/thin/starThinnest outlined icons
Duotoneduotone/duotone/starTwo-tone icons with layered colors

Font Awesome's Sharp family is also available, with squared-off corners: sharp-solid/, sharp-regular/, sharp-light/, sharp-thin/, and sharp-duotone-solid/ (e.g. sharp-duotone-solid/star).

Examples

<Icon icon="solid/bell" size={24} />
<Icon icon="regular/bell" size={24} />
<Icon icon="light/bell" size={24} />
<Icon icon="thin/bell" size={24} />
<Icon icon="duotone/bell" size={24} />

Using Variants in Components

Variants work anywhere icons are used: components, navigation, and frontmatter.

<Card title="Callouts" icon="light/bell" href="/components/callouts">

  Add important notices to your documentation.

</Card>
page.mdx
---
title: Settings
icon: light/gear
---
docs.json
{
  "group": "Account",
  "icon": "regular/user",
  "pages": ["profile", "settings"]
}

Icon object form

In docs.json, anywhere an icon is accepted (navigation groups, tabs, anchors, page icons, and search popularPages) you can write the icon as an object instead of a string. This is the form the dashboard's icon picker produces:

docs.json
{
  "group": "Security",
  "icon": { "name": "shield", "style": "duotone" }
}
FieldTypeDescription
namestringFont Awesome icon name (required)
stylestringOne of the variants above: solid, regular, light, thin, duotone, or a sharp-* variant
librarystringfontawesome or lucide, accepted for compatibility; icons render via Font Awesome

{ "name": "shield", "style": "duotone" } is equivalent to the string "duotone/shield". Use whichever you prefer. Frontmatter icon (page icons) takes the string form only.

Default Variant

When no variant is specified, icons render in the Solid variant. Override it per icon with a style prefix (light/gear) or, in docs.json, the object form's style field.

Comparing Variants

Here's the same icon in all variants to help you choose:

VariantIconBest for
SolidPrimary actions, emphasis
RegularSecondary UI elements
LightMinimal designs, navigation
ThinUltra-minimal aesthetics
DuotoneVisual interest, branding

Duotone icons use two colors: a primary and a secondary shade. The secondary layer is automatically set to a lighter opacity of the primary color.

Icons can appear in the sidebar navigation at three levels: anchors, groups, and individual pages.

Page Icons

Add an icon to any page using frontmatter:

authentication.mdx
---
title: Authentication
icon: lock
---

The icon appears in the sidebar next to the page title.

Group Icons

Add icons to navigation groups in docs.json:

docs.json
{
  "group": "Security",
  "icon": "shield",
  "pages": ["authentication", "api-keys"]
}

Anchor Icons

Add icons to top-level anchors in docs.json:

docs.json
{
  "navigation": {
    "anchors": [
      {
        "anchor": "Docs",
        "icon": "book-open",
        "groups": [...]
      },
      {
        "anchor": "API",
        "icon": "code",
        "groups": [...]
      }
    ]
  }
}

Free vs Pro Icons

Jamdesk includes Font Awesome Pro, which means:

  • 7,000+ icons available (vs ~2,000 in the free version)
  • All free icons work without any changes
  • Pro-exclusive icons like duotone variants are included
  • Light and thin weight icons available

If you're migrating from another documentation platform that used Font Awesome Free, all your existing icons will continue to work.

What's Next?

SEO Optimization

Improve discovery and metadata

Frontmatter

Define titles, descriptions, and SEO fields