All Projects → react-declarative → react-declarative

react-declarative / react-declarative

Licence: other
A React form builder which interacts with a JSON endpoint to generate nested 12-column grids with input fields and automatic state management in a declarative style. Endpoint is typed by TypeScript guards (IntelliSense available). This tool is based on material-ui components, so your application will look beautiful on any device...

Programming Languages

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

Projects that are alternatives of or similar to react-declarative

react-cool-form
😎 📋 React hooks for forms state and validation, less code more performant.
Stars: ✭ 246 (+1347.06%)
Mutual labels:  state-management, form-validation, form-builder
Elm Form
Dynamic forms handling in Elm
Stars: ✭ 189 (+1011.76%)
Mutual labels:  form-validation, form-builder
Formr
Create and Validate PHP Forms in Seconds.
Stars: ✭ 163 (+858.82%)
Mutual labels:  form-validation, form-builder
Material Singleinputform
A single EditText instead of a classical form. Library that implements flavienlaurent's singleinputform
Stars: ✭ 202 (+1088.24%)
Mutual labels:  material-ui, form-validation
Usetheform
React library for composing declarative forms, manage their state, handling their validation and much more.
Stars: ✭ 40 (+135.29%)
Mutual labels:  form-validation, form-builder
Rsformview
A Cocoapods library designed to easily create forms with multiple data entry fields
Stars: ✭ 84 (+394.12%)
Mutual labels:  form-validation, form-builder
React Material Ui Form Validator
Simple validator for forms designed with material-ui components.
Stars: ✭ 289 (+1600%)
Mutual labels:  material-ui, form-validation
grav-plugin-form
Grav Form Plugin
Stars: ✭ 48 (+182.35%)
Mutual labels:  form-validation, form-builder
React Final Form
🏁 High performance subscription-based form state management for React
Stars: ✭ 6,781 (+39788.24%)
Mutual labels:  state-management, form-validation
Final Form
🏁 Framework agnostic, high performance, subscription-based form state management
Stars: ✭ 2,787 (+16294.12%)
Mutual labels:  state-management, form-validation
ObservableComputations
Cross-platform .NET library for computations whose arguments and results are objects that implement INotifyPropertyChanged and INotifyCollectionChanged (ObservableCollection) interfaces.
Stars: ✭ 94 (+452.94%)
Mutual labels:  declarative, declarative-programming
Gaintime
GainTime é um framework de HTML, CSS e JS para desenvolvimento de projetos responsivos, focado na simplicidade.
Stars: ✭ 19 (+11.76%)
Mutual labels:  form-validation, grid-system
React Hook Form
📋 React Hooks for form state management and validation (Web + React Native)
Stars: ✭ 24,831 (+145964.71%)
Mutual labels:  form-validation, form-builder
Form For
ReactJS forms made easy
Stars: ✭ 118 (+594.12%)
Mutual labels:  form-validation, form-builder
React Reactive Form
Angular like reactive forms in React.
Stars: ✭ 259 (+1423.53%)
Mutual labels:  form-validation, form-builder
match-rules
A tiny 1kB zero dependency JavaScript utility that lets you write your conditional business logic in a declarative way (React like).
Stars: ✭ 39 (+129.41%)
Mutual labels:  declarative, declarative-programming
formio
Formio, form definition and binding library for Java platform
Stars: ✭ 24 (+41.18%)
Mutual labels:  form-validation, form-builder
core
🔥 Antares Core Implemenation. Most important project layer, this is the heart for your app. ACL, notifiter, console, geoip, areas, utils and many more...
Stars: ✭ 24 (+41.18%)
Mutual labels:  form-validation, form-builder
react-mui-pro-starter
Mix of Create React App and Material UI with set of reusable components and utilities to build professional React Applications faster.
Stars: ✭ 14 (-17.65%)
Mutual labels:  state-management, material-ui
material-ui-umd
Разработка ui на React используя как систему сборки только TypeScript Compiler. Примеры кода, инструменты, umd дистрибутив библиотеки material-ui с файлом описания пространств имен глобального объекта
Stars: ✭ 14 (-17.65%)
Mutual labels:  material-ui, standalone

react-declarative

Material-ui json endpoint form builder. Check this storybook for more samples...

meme

A React form builder which interacts with a JSON endpoint to generate nested 12-column grids with input fields and automatic state management in a declarative style. Endpoint is typed by TypeScript guards (IntelliSense available). This tool is based on material-ui components, so your application will look beautiful on any device...

Install

There is a sample app avalible in demo folder...

npm install --save react-declarative

Demos

1. Layout grid

Link to source code

layout-grid

const fields: TypedField[] = [
  {
    type: FieldType.Line,
    title: 'User info',
  },
  {
    type: FieldType.Group,
    phoneColumns: '12',
    tabletColumns: '6',
    desktopColumns: '4',
    fields: [
      {
        type: FieldType.Text,
        title: 'First name',
        defaultValue: 'Petr',
        description: 'Your first name',
        leadingIcon: Face,
        focus() { console.log("focus :-)"); },
        blur() { console.log("blur :-("); },
        name: 'firstName',
      },
      {
        type: FieldType.Text,
        title: 'Last name',
        defaultValue: 'Tripolsky',
        description: 'Your last name',
        name: 'lastName',
      },

      ...

];

2. Form validation

Link to source code

form-validation

const fields: TypedField[] = [
  {
    type: FieldType.Text,
    name: 'email',
    trailingIcon: Email,
    defaultValue: '[email protected]',
    isInvalid({email}) {
      const expr = /^[\w-.]+@([\w-]+\.)+[\w-]{2,4}$/g;
      if (!expr.test(email)) {
        return 'Invalid email address';
      } else {
        return null;
      }
    },
    isDisabled({disabled}) {
      return disabled;
    },
    isVisible({visible}) {
      return visible;
    }
},
{
    type: FieldType.Expansion,
    title: 'Settings',
    description: 'Hide or disable',
    fields: [
      {
        type: FieldType.Switch,
        title: 'Mark as visible',
        name: 'visible',
        defaultValue: true,
      },

      ...

3. Gallery of controls

Link to source code

gallery

const fields: TypedField[] = [
  {
    type: FieldType.Paper,
    fields: [
      {
        type: FieldType.Line,
        title: 'Checkboxes',
      },
      {
        type: FieldType.Checkbox,
        name: 'checkbox1',
        columns: '3',
        title: 'Checkbox 1',
      },
      {
        type: FieldType.Checkbox,
        name: 'checkbox2',
        columns: '3',
        title: 'Checkbox 2',
      },

      ...

4. JSX Injection

Link to source code

const fields: TypedField[] = [
  {
    type: FieldType.Paper,
    fields: [
      {
        type: FieldType.Component,
        element: (props) => <Logger {...(props || {})}/>, 
      },
    ],
  },

  ...

];

License

MIT © tripolskypetr

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].