Installation
Peer Dependencies
The Vue Vanilla renderer set requires the following peer dependencies:Usage
Import and register the Vue Vanilla renderers with JSON Forms:Available Renderers
Control Renderers
Control renderers handle individual form inputs:- StringControlRenderer - Text input for strings
- MultiStringControlRenderer - Textarea for multi-line strings
- NumberControlRenderer - Number input for decimals
- IntegerControlRenderer - Number input for integers
- EnumControlRenderer - Select dropdown for enum values
- oneOfEnumControlRenderer - Select for oneOf with enum
- DateControlRenderer - Date input using HTML5 date picker
- DateTimeControlRenderer - DateTime input using HTML5 datetime-local picker
- TimeControlRenderer - Time input using HTML5 time picker
- BooleanControlRenderer - Checkbox for boolean values
Layout Renderers
Layout renderers organize form structure:- LayoutRenderer - Generic layout renderer for horizontal and vertical layouts
- GroupRenderer - Groups elements with optional label
- CategorizationRenderer - Tab-based categorization
- CategorizationStepperRenderer - Stepper-based categorization
Complex Renderers
Complex renderers handle advanced features:- ObjectRenderer - Nested object structures
- OneOfRenderer - OneOf schema selection
- EnumArrayRenderer - Array of enum values with checkboxes
Additional Components
- ControlWrapper - Wrapper component for controls that handles labels and validation messages
Styling
The Vue Vanilla renderers provide a basic CSS file that you can import:Custom Styling
You can override the default styles with your own CSS:Tailwind CSS Integration
The Vue Vanilla renderers work excellently with Tailwind CSS:Component Structure
Each renderer is a Vue 3 component that exports both the component and an entry object:Advantages
The Vue Vanilla renderer set offers several advantages:- Lightweight - Minimal dependencies, smaller bundle size
- Vue 3 Native - Built specifically for Vue 3 with Composition API
- Flexible Styling - Complete control over appearance with CSS
- Framework Agnostic Styling - Works with any CSS framework (Tailwind, Bootstrap, etc.)
- Accessible - Uses semantic HTML5 elements
- Simple - Straightforward structure, easy to understand and customize
Customization
You can customize Vue Vanilla renderers by:- CSS Styling - Apply custom CSS to override default styles
- Custom Renderers - Create custom Vue components that extend the Vanilla renderers
- Custom Testers - Override default testers to change when renderers are applied