Themes
By default, this library renders form fields and widgets leveraging the Bootstrap semantics, meaning that you must load the Bootstrap stylesheet on the page to view the form properly. You can use another theme by importing one of the packages listed below.
Supported themes
Theme Name | Status | Package Name / Link |
---|---|---|
Bootstrap 3 (default) | Published | @rjsf/core |
Bootstrap 4 | Published | @rjsf/bootstrap-4 |
material-ui 4 & 5 | Published | @rjsf/material-ui |
fluent-ui | Published | @rjsf/fluent-ui |
antd | Published | @rjsf/antd |
Semantic UI | Published | @rjsf/semantic-ui |
Chakra UI | Published | @rjsf/chakra-ui |
Using themes
To use a theme from a package, just import the <Form />
component from that package. For example, to use the material ui form,
first install both @rjsf/core
and @rjsf/material-ui
. Then you can import the form by doing:
import Form from "@rjsf/material-ui";
If you would like to contribute a theme with a new UI framework, please develop the theme using the withTheme
component described in Theme Customization and make a PR!
You can also use the uiSchema to add custom CSS class names to your form.
Customizing with other frameworks
The default theme is bootstrap 3. In order to use another theme, you must first install @rjsf/core
.
For example, to use the standard bootstrap 3 form, you can run:
import Form from "@rjsf/core";
To use the material-ui form, you should first install both @rjsf/core
and @rjsf/material-ui
. Then, you can run:
import Form from "@rjsf/material-ui";
For more information on how to create a custom theme, see documentation on the withTheme
component.