All Projects → wtnm → fform

wtnm / fform

Licence: MIT License
Flexibile and extendable form builder with constructor

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language
CSS
56736 projects

Projects that are alternatives of or similar to fform

Jsonschema
An implementation of the JSON Schema specification for Python
Stars: ✭ 3,474 (+13261.54%)
Mutual labels:  schema, json-schema, jsonschema
react-jsonschema-formbuilder
No description or website provided.
Stars: ✭ 45 (+73.08%)
Mutual labels:  json-schema, form, form-builder
Vue Form Json Schema
Create forms using JSON schema. Bring your components!
Stars: ✭ 253 (+873.08%)
Mutual labels:  schema, json-schema, form
Vue Form Builder
Build powerful vue form with JSON schema and composition api.
Stars: ✭ 325 (+1150%)
Mutual labels:  json-schema, form, form-builder
element-schema-form
A schema-based element-ui form component for Vue2.x.
Stars: ✭ 31 (+19.23%)
Mutual labels:  schema, json-schema, form-builder
typescript-to-json-schema
Generate JSON schema from your Typescript sources
Stars: ✭ 54 (+107.69%)
Mutual labels:  schema, json-schema
antd-react-form-builder
Example
Stars: ✭ 74 (+184.62%)
Mutual labels:  form, form-builder
grav-plugin-form
Grav Form Plugin
Stars: ✭ 48 (+84.62%)
Mutual labels:  form, form-builder
formily
Simple, lightweight, and flexible schema-based form for Vue.js
Stars: ✭ 23 (-11.54%)
Mutual labels:  schema, form
magnet
A JSON/BSON schema generator
Stars: ✭ 16 (-38.46%)
Mutual labels:  schema, json-schema
scalable-form-platform
A solution for building dynamic web forms with visual editor
Stars: ✭ 109 (+319.23%)
Mutual labels:  json-schema, form
react-cool-form
😎 📋 React hooks for forms state and validation, less code more performant.
Stars: ✭ 246 (+846.15%)
Mutual labels:  form, form-builder
openapi4j
OpenAPI 3 parser, JSON schema and request validator.
Stars: ✭ 92 (+253.85%)
Mutual labels:  schema, json-schema
arrest
Swagger REST framework for Node.js, with support for MongoDB and JSON-Schema
Stars: ✭ 17 (-34.62%)
Mutual labels:  schema, jsonschema
joyce
Joyce is a highly scalable event-driven Cloud Native Data Hub.
Stars: ✭ 37 (+42.31%)
Mutual labels:  schema, json-schema
vue-example
Vue.js example application (server-side rendering, router, vuex store, form validation, i18n & l10n)
Stars: ✭ 62 (+138.46%)
Mutual labels:  schema, form
jsons2xsd
Highly configurable converter from JSON-schema to XML-schema (XSD).
Stars: ✭ 65 (+150%)
Mutual labels:  json-schema, jsonschema
sf-java-ui
Json Schema Form java based library allow developers to define schema and form using field annotations
Stars: ✭ 23 (-11.54%)
Mutual labels:  schema, json-schema
to-json-schema
Converts JS objects to JSON Schema
Stars: ✭ 83 (+219.23%)
Mutual labels:  schema, jsonschema
another-json-schema
Another JSON Schema validator, simple & flexible & intuitive.
Stars: ✭ 48 (+84.62%)
Mutual labels:  schema, json-schema

Table of content

Overview

Flexible Form (fform) - form builder with minimum redundancy, maximum flexibility, and extendability. It uses JSONSchema to describe forms, React (v16) for rendering and has native Redux support for state storage but can be used with any other external storage or can use only internal storage (storage agnostic).

See fform-constructor for live demo.

Features

  • 98kb minified, 28kb gziped
  • form-constuctor for quick start
  • form extension, combination and reuse with JSONSchema's allOf, oneOf, $ref properties
  • sync/async/JSON/submit validation
  • storage agnostic, native redux support, can be used with any external storage or can use own internal storage
  • built-in arrays (add/del/move operations)
  • built-in viewer
  • fully customizable
  • SSR support

Installation & Usage

To install the stable version:

npm install --save fform

This assumes that you are using npm with a module bundler like webpack

Without JSON validaton

import {FForm, elements} from 'fform';
import {render} from 'react-dom';

render(<FForm core={{name:"name", schema: {type:"string"}, elements}}/>, document.querySelector('#root'));

With JSON validaton

import {FForm, elements} from 'fform';
import {render} from 'react-dom';

import imjvWrapper from 'fform/addons/imjvWrapper';
import * as imjvValidator from 'fform/addons/is-my-json-valid-lite';
const JSONValidator = imjvWrapper(imjvValidator);

render(<FForm core={{name:"name", schema: {type:"string"}, elements, JSONValidator}}/>,
		document.querySelector('#root'));

How to use with different storages see in documentation

Tutorial

Examples

Documentation

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].