Upload a font
Fonts live under Settings -> Fonts.Open the Fonts tab
In Settings, select Fonts. Uploaded families are listed here; click Upload Font to add one.
Choose a file
In the Upload Font dialog, click the drop area and select a
.ttf or .otf file. Each file must be 2MB or smaller.Confirm the family, weight, and style
FlowPilot auto-detects the Family Name, Weight, and Style from the filename. Check them and adjust if needed:
- Family Name: the display name, for example
Brand Sans. Use the same family name for every weight of the same font. - Weight: from Thin (100) through Black (900). Defaults to Regular (400).
- Style: Normal or Italic.
TODO: screenshot of the Upload Font dialog with the file picker and family/weight/style fields.
Families and variants
A family groups every weight and style of one typeface under a single name. Each uploaded file is a variant of that family (for example,Brand Sans Regular, Brand Sans Bold, Brand Sans Bold Italic).
On the Fonts tab, each family card shows a live preview (“The quick brown fox jumps over the lazy dog”), a badge with the number of weights, and a removable chip for every variant. To match weights into one family, give them all the same family name. Deleting a variant removes it from the picker, but published flows already using it keep working.
Limits
| Limit | Value |
|---|---|
| File types | .ttf, .otf |
| Max file size | 2MB per file |
| Total files | 50 per workspace |
N/50 font files counter.
How the SDK gets your fonts
Fonts resolve through the flow’s font references. When the SDK resolves a placement, the resolve response includes the font files the flow needs, and the SDK downloads and applies them at render time. If a font is not available (for example, the device is offline before it has been cached), the SDK falls back to a system font. See SDK REST API for the fonts field on the resolve response and Offline and bundled flows for offline behavior.Common mistakes
- Mismatched family, weight, or style metadata. If you label a Bold file as Regular, or give two weights different family names, the editor cannot match them and the wrong weight renders. Confirm the auto-detected values before uploading.
- Splitting one font across many family names. Use one family name for all weights so they group correctly.
- Hitting a limit. Files over 2MB are rejected, and you can store at most 50 font files per workspace. Subset or compress large fonts, or remove unused variants.