Using Custom Fonts in Dashboard Themes
Overview
Typography is one of the strongest signals of brand identity in a dashboard. Dashboard themes let you set the fonts used across your workspace: pick from web-safe defaults, or import a custom font to match your company's typography.
In this guide, you'll learn:
- How to use web-safe fonts
- How to import and use custom fonts
- Best practices and troubleshooting tips
Using Web-Safe Fonts
By default, you can use several web-safe fonts in your themes. These fonts are widely available across different operating systems and browsers, ensuring consistent display for most users.
Available Web-Safe Fonts
Here are some commonly used web-safe fonts:
- Inter (sans-serif - default Holistics font)
- Arial (sans-serif)
- Verdana (sans-serif)
- Tahoma (sans-serif)
- Trebuchet MS (sans-serif)
- Times New Roman (serif)
- Georgia (serif)
- Garamond (serif)
- Courier New (monospace)
- Brush Script MT (cursive)
Using Web-Safe Fonts in Your Theme
To use a web-safe font in your theme, specify it in the font_family property:
theme: PageTheme {
block {
label {
font_family: "Arial"
}
text {
font_family: "Georgia"
}
}
}
Using Custom Fonts
For more unique typography, you can import and use custom fonts in your Canvas Dashboard by following these two steps:
Step 1: Importing Custom Fonts
Add a CSS @import statement to your dashboard's theme using the custom_css property. Here's an example using the 'Silkscreen' font from Google Fonts:
theme: PageTheme {
custom_css: @css
@import url('https://fonts.googleapis.com/css2?family=Silkscreen:wght@400;700&display=swap');
;;
}
How to import fonts from Google Fonts
- Go to Google Fonts and search for the font you want to use
- Select the font you want to use
- Click on the
Get fontbutton - Click on the
Get embed codebutton and copy the@importstatement - Paste the
@importstatement into your theme'scustom_cssproperty
Step 2: Using the Custom Font in Your Theme
After importing the font, use it in your theme by specifying its name in the font_family property:
theme: PageTheme {
block {
label {
font_family: "Silkscreen"
}
text {
font_family: "Silkscreen"
}
}
custom_css: @css
@import url('https://fonts.googleapis.com/css2?family=Silkscreen:wght@400;700&display=swap');
;;
}
Best Practices
Using Font Fallbacks
Always provide fallback fonts in case the primary font fails to load. End the list with a generic font family name:
theme: PageTheme {
block {
label {
font_family: "Playfair Display, Georgia, serif"
}
}
}
Troubleshooting
If your custom fonts aren't working:
- Verify the font URL is correct and accessible
- Confirm the font name in your theme exactly matches the imported font name
- Try refreshing your browser and the dashboard
- Check that the
@importstatement is present in thecustom_cssproperty of your theme