UNPKG

@anikitenko/bp5-rjsf-theme

Version:

BlueprintJS 5 theme for React JSON Schema Form

100 lines (67 loc) โ€ข 3.5 kB
[![npm version](https://img.shields.io/npm/v/@anikitenko/bp5-rjsf-theme?color=blue)](https://www.npmjs.com/package/@anikitenko/bp5-rjsf-theme) [![npm downloads](https://img.shields.io/npm/dw/@anikitenko/bp5-rjsf-theme)](https://www.npmjs.com/package/@anikitenko/bp5-rjsf-theme) [![Build](https://github.com/anikitenko/bp5-rjsf-theme/actions/workflows/release.yml/badge.svg)](https://github.com/anikitenko/bp5-rjsf-theme/actions/workflows/release.yml) [![CodeFactor](https://www.codefactor.io/repository/github/anikitenko/bp5-rjsf-theme/badge)](https://www.codefactor.io/repository/github/anikitenko/bp5-rjsf-theme) [![CodeQL](https://github.com/anikitenko/bp5-rjsf-theme/actions/workflows/github-code-scanning/codeql/badge.svg)](https://github.com/anikitenko/bp5-rjsf-theme/actions/workflows/github-code-scanning/codeql) [![License](https://img.shields.io/github/license/anikitenko/bp5-rjsf-theme)](LICENSE) <p style="text-align: center"> <img src="./assets/logo.svg" width="420" alt="bp5-rjsf-theme logo" /> </p> # @anikitenko/bp5-rjsf-theme > ๐Ÿ’  A fully TypeScript-compatible BlueprintJS v5 theme for [react-jsonschema-form (RJSF)](https://github.com/rjsf-team/react-jsonschema-form) This is the **first and only** RJSF theme implementation built from the ground up for **BlueprintJS v5**, written entirely in **TypeScript**, and compiled in **strict mode** to ensure **full compatibility** with the RJSF Theme system. --- ## ๐Ÿšง Project Status โš ๏ธ This project is **still under active development**. ๐Ÿงช **Examples and documentation are coming soon!** --- ## โœจ Features - โœ… **Strictly typed**: Powered by TypeScript and validated against `ThemeProps`. - โœ… **BlueprintJS v5-first**: Uses the latest Blueprint components for styling and behavior. - โœ… **Plug-and-play** usage with `@rjsf/core`. --- ## ๐Ÿงฉ Implemented Widgets | Widget | Status | | --------------------------------- | ------ | | `TextWidget` | โœ… | | `UpDownWidget` | โœ… | | `SelectWidget` with `MultiSelect` | โœ… | | `CheckboxWidget` | โœ… | | `CheckboxesWidget` | โœ… | --- ## ๐Ÿ—๏ธ Implemented Templates | Template | Status | | -------------------------- | ------ | | `ObjectFieldTemplate` | โœ… | | `FieldTemplate` | โœ… | | `ErrorListTemplate` | โœ… | | `ArrayFieldTemplate` | โœ… | | `SubmitButton` | โœ… | | `TitleFieldTemplate` | โœ… | | `DescriptionFieldTemplate` | โœ… | | `WrapIfAdditionalTemplate` | โœ… | --- ## ๐Ÿ”ง Usage Using this theme is as easy as: ```ts import { withTheme } from "@rjsf/core"; import { Bp5Theme } from "@anikitenko/bp5-rjsf-theme"; const Form = withTheme(Bp5Theme); // Then use it like any RJSF form <Form schema={yourSchema} /> ``` ## ๐Ÿ“ฆ Installation ``` npm install @anikitenko/bp5-rjsf-theme # or yarn add @anikitenko/bp5-rjsf-theme ``` ## ๐Ÿž Reporting Issues If you find bugs or Blueprint components not rendering as expected: - Please open an [issue on GitHub](https://github.com/anikitenko/bp5-rjsf-theme/issues) - Include a minimal schema and usage snippet to help us debug quickly ## โค๏ธ Contributing PRs are welcome! If you're using BlueprintJS v5 + RJSF and want to improve or extend this theme โ€” fork away and submit a PR! ## ๐Ÿ“˜ License MIT > Made with ๐Ÿ’™ by [@anikitenko](https://github.com/anikitenko)