formMOD
tutim
formMOD | tutim | |
---|---|---|
14 | 16 | |
37 | 250 | |
- | 3.2% | |
0.7 | 7.1 | |
about 1 year ago | 7 months ago | |
TypeScript | TypeScript | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
formMOD
-
Create React forms in a few minutes.
https://github.com/nickorsk2017/formMOD What do you think about this system? Thank you!
-
Why you need a new library for forms on React?
import { Form, Field } from ‘react-final-form’; … … ( Bio {meta.touched && meta.error && {meta.error}} )} /> …
What issue??
- If you currently have a project you need to redoing all your UI components to specific syntax.
- 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:
- Define a scheme which describes validation and some properties of form data.
- 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!
{meta.touched && meta.error && {meta.error}}
)}
/>
…
What problem??
- If you currently have a project you need to redoing all your UI components to specific syntax.
- 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 problem?
A 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 think about form library at first moment?
Yes, when you need a validations.
The 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.
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:
Define a scheme which describes validation and some properties of form data.
Connect your scheme via methods to your UI components.
Scheme
// scheme.ts
export default {
valid: null,
formValue: {
first_name: "",
last_name: "",
},
rules: {
first_name: [
["empty", "please write your first name"]
],
last_name: [
["empty", "please write your last name"]
]
}
}
Form
//MyForm.ts
import {useFormMod} from "formmod";
export const MyForm = () => {
const {setValue, getValue, getError, validate} = useFormMod(
FORM_SCHEME
);
return (
…
label={"First name"}
value={getValue("first_name")}
error={getError("first_name")}
onChange={(value: string) => setValue("first_name", value)}
/>
…
);
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 very need your support, just set a star in gitHub here:
https://github.com/nickorsk2017/formMOD
Full documentation for Heroes:
https://doc.formmod.org/
Other features
Also our library can work with optional, group, composite components.
It has described working with CRUD, store, data and more.
It is absolutely free.
We are working for world community.
We want to make development easer for everybody.
Thank you for reading!
-
React.js. Complex react forms are easy. The FormMOD is new library for react forms.
We really need your support, set a star on github here: https://github.com/nickorsk2017/formMOD
tutim
-
I built an open-source alternative to TypeForm
Beta release on GitHub (🙏🏻🌟): https://github.com/tutim-io/tutim.
- Show HN: Tutim – an open source headless form builder
-
10 must-know tips for crafting the perfect README.md for your GitHub repo (with examples)
Home page
- Show HN: I built an open source infra for multi-step forms [MIT]
- Show HN: I built an open-source alternative to TypeForm [MIT]
-
Tutim – the flexible, open-source form builder your project needs
Main website: https://tutim.io
- The end of FED? Jira ticket to a form module. Live example (+video)
- From JIRA ticket to wizard-form - how GPT is revolutionizing product management (live example and video)
- Building a headless wizard infrastructure: A journey from developer's struggles to open source 🧙
What are some alternatives?
react-bare-forms - A bare minimal React form library for quick & simple forms.
CASE - Typescript lightweight Backend-as-a-Service ✨
under-control - 📝 🐕 Are you losing sanity every time you need to make a form? Are you have enough of all antipatterns and cursed frameworks in React? Screw that! Treat all forms and inputs as a recursive composable control!
FormsLab - 😊📊 Form builder for anonymous surveys, polls, and collecting feedback. Experience management solution.
ajv-ts - First-class ajv typescript JSON-schema builder inspired from Zod
react-happy-form - Simple, easy to use, powerful form state manage tools.
Awesome-Repo-Template - An awesome repo template packed with tons of tools & more to kick-start your next project / repo!
DataLayerTemplate - Template I use to create a datalayer to handle CRUD functionality
react-cool-form - 😎 📋 React hooks for forms state and validation, less code more performant.
createform - The ReactJS form library
ai-component-generator
sequential-workflow-designer - Customizable no-code component for building flow-based programming applications. 0 external dependencies.