@osforms/react use a theme system built on top of FormTheme. You can customize colors, font, font size, and border radius.
Set a theme with the theme prop on OSForm, or store it in the form’s schema (formSchema.theme) through PATCH /api/v1/forms/{id}. The dashboard builder doesn’t have a theme editor yet.
Default Theme
The default theme is dark, matching the OSForms dashboard:FormTheme Reference
colors
fontFamily
Default:Inter, -apple-system, ...system-ui, sans-serif
Pass any valid CSS font-family string. The font itself is not loaded automatically — ensure it’s available in your app.
fontSize
borderRadius
fontSize and borderRadius mostly affect classic mode. Conversational mode uses its own fixed sizes.
buttonVariant
Accepted (solid, outline, ghost) but not applied yet. Buttons always render solid.
Applying Themes
Via OSForm prop
Each top-level key you pass replaces the schema’s value for that key. colors is replaced as a whole object, and colors you omit fall back to the defaults above, so pass all of them:
Via FormSchema
Themes can also be stored in the form schema. TheOSForm theme prop overrides it key by key, as described above: