Why you need a new library for forms on React?

This page summarizes the projects mentioned and recommended in the original post on /r/reactjs

SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
surveyjs.io
featured
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
  • formMOD

    A powerful form system for React with hooks

  • import { Form, Field } from ‘react-final-form’; … … ( Bio {meta.touched && meta.error && {meta.error}} )} /> …

    What issue??

    1. If you currently have a project you need to redoing all your UI components to specific syntax.
    2. Until today a developers have millions UI libraries.Why can't you just install it and use it?You must make a wrapper components, adapt logic to use library.

    We calculated time for redoing a large app.

    It need about from few months to fixing bugs, changing syntax…

    For a business it crazy huge.

    Example 3

    import { useForm } from ‘react-hook-form’;
    …
    const { register, handleSubmit, errors } = useForm();
    …
    return (
     
        …
        
        {errors.lastname && 'Last name is required.’}
        …
      
    );
    

    What issue?

    
    

    Problem is specific syntax inside UI component.

    At first glance short syntax is good.

    But you can do it easy without libraries.

    const props = helper({…});
    
    
    

    Solution

    When you need to think about a form library at first moment?

    Yes, when you need a validations.

    A form library only must know about data.

    For example, that a data row is valid or not.

    - Not about your app structure.

    - Not about JSX or UI components inside.

    - Not about UI logic.

    A form system must be abstract. It's like a smart useState().

    You should make your app easy, just connect your components to data.

    How it can look.

    After long analyse we decided to make our library.

    For creating your forms you need two simple steps:

    1. Define a scheme which describes validation and some properties of form data.
    2. Connect your scheme via methods to your UI components.

    Scheme

    // scheme.ts
    export default {
     valid: null,
     formValue: {
        first_name: "",
        last_name: "",
     },
     rules: {
        full_name: [
            ["empty", "please enter your full name"]
        ],
        email: [
            ["empty", "please enter your email"],
            ["email", "is not email"],
        ]
     }
    }
    

    Form

    //MyForm.ts
    import {useFormMod} from "formmod";
    
    export const MyForm = () => {
    const {setValue, getValue, getError, validate} = useFormMod(
        FORM_SCHEME
    );
    return (
    
        …
         setValue("full_name", value)}
        />
        …
    
    );
    

    Full documentation :

    https://doc.formmod.org/

    **WE RECOMMEND TO USE LAPTOP OR DESKTOP DEVICE FOR READING DOCUMENTATION.

    Advantages:

    • No dependencies. This is the power of simple work.This form system don’t know about your components, JSX, your app, store…You can use it with any UI components. No longer need to make wrappers components, understanding JSX syntax.Just use it with anything.
    • Easy system, easy code. It’s very simple.
    • Save time. Just connect properties to your components.

    Important

    We have finished our library recently.

    Until today we have 151 commits, 14 releases in our repository and this is just the beginning of the work.

    We started work with community, fixing documentation.

    We need your support, just set a star in gitHub here:

    https://github.com/nickorsk2017/formMOD

    Other features

    Also our library can work with optional, group, composite components.

    It has described work with CRUD, store (about mutable data) and more.

    It is absolutely free (MIT).

    We are working for world community.

    We want to make development easer for everybody.

    Thank you for reading!

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Create React forms in a few minutes.

    1 project | /r/Frontend | 11 Apr 2022
  • Create React forms in a few minutes.

    2 projects | /r/javascript | 11 Apr 2022
  • Create React forms in a few minutes.

    2 projects | /r/react | 11 Apr 2022
  • Create React forms in a few minutes.

    2 projects | /r/reactjs | 11 Apr 2022
  • Create React forms in a few minutes.

    2 projects | dev.to | 11 Apr 2022