Skip to content

Add a package for Mantine UIΒ #4289

@amir78729

Description

@amir78729

Prerequisites

What theme are you using?

other

Is your feature request related to a problem? Please describe.

Currently, react-jsonschema-form provides support for several UI frameworks like Material-UI, Ant Design, and Bootstrap. However, it lacks support for Mantine UI, a popular, modern React component library that offers a range of customizable components and hooks. Developers who use Mantine UI in their projects do not have an easy way to leverage react-jsonschema-form to render forms styled with Mantine components. This results in inconsistent UI experiences and the additional overhead of manually integrating Mantine components with react-jsonschema-form.

Describe the solution you'd like

I would like to see react-jsonschema-form support Mantine UI out of the box. This would involve creating a new theme package or core library extension that utilizes Mantine's form components such as TextInput, Select, Checkbox, Switch, etc., and ties them into the form generation logic of react-jsonschema-form. Ideally, this solution would:

  • Provide wrappers for Mantine UI components that fit into the react-jsonschema-form widget system.
  • Offer seamless integration with existing Mantine themes and styles, allowing developers to maintain consistent design language across their applications.
  • Ensure compatibility with Mantine's styling solution (e.g., styles and themes) and its utility hooks.
  • Include comprehensive documentation and examples to help developers quickly integrate Mantine UI with react-jsonschema-form.

Describe alternatives you've considered

  1. Custom Implementation: Manually wrapping Mantine components with custom widgets to use them within react-jsonschema-form. This approach is possible but requires significant effort, which can be repetitive across different projects. Moreover, it lacks the maintenance and updates provided by a core or officially supported package.

  2. Using Another Supported UI Library: Switching to another UI library that react-jsonschema-form already supports (e.g., Material-UI or Ant Design). However, this is not ideal for developers committed to using Mantine due to its design philosophy, component availability, or theming capabilities.

  3. Community-Maintained Package: Creating a community-maintained package that integrates Mantine UI with react-jsonschema-form. While this could work, it would lack the benefits of official support, and maintenance could become an issue over time.

Adding support for Mantine UI directly in react-jsonschema-form would provide a better developer experience, reduce duplication of effort, and foster a more inclusive ecosystem that supports a wider range of popular UI libraries.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions