All Projects โ†’ JoviDeCroock โ†’ Hooked Form

JoviDeCroock / Hooked Form

Licence: mit
Performant 2KB React library to manage your forms

Programming Languages

typescript
32286 projects

Projects that are alternatives of or similar to Hooked Form

Use Form
Build great forms without effort. ๐Ÿš€
Stars: โœญ 42 (-61.82%)
Mutual labels:  hooks, forms
React Form
โš›๏ธ Hooks for managing form state and validation in React
Stars: โœญ 2,270 (+1963.64%)
Mutual labels:  hooks, forms
Fielder
A field-first form library for React and React Native
Stars: โœญ 160 (+45.45%)
Mutual labels:  hooks, forms
React Hook Form
๐Ÿ“‹ React Hooks for form state management and validation (Web + React Native)
Stars: โœญ 24,831 (+22473.64%)
Mutual labels:  hooks, forms
Formik
Build forms in React, without the tears ๐Ÿ˜ญ
Stars: โœญ 29,047 (+26306.36%)
Mutual labels:  hooks, forms
Input Value
React hook for creating input values
Stars: โœญ 104 (-5.45%)
Mutual labels:  hooks, forms
react-cool-form
๐Ÿ˜Ž ๐Ÿ“‹ React hooks for forms state and validation, less code more performant.
Stars: โœญ 246 (+123.64%)
Mutual labels:  hooks, forms
Usetheform
React library for composing declarative forms, manage their state, handling their validation and much more.
Stars: โœญ 40 (-63.64%)
Mutual labels:  hooks, forms
Formium
The headless form builder for the modern web.
Stars: โœญ 78 (-29.09%)
Mutual labels:  hooks, forms
React Resize Observer Hook
ResizeObserver + React hooks
Stars: โœญ 101 (-8.18%)
Mutual labels:  hooks
I7j Pdfhtml
pdfHTML is an iText 7 add-on for Java that allows you to easily convert HTML and CSS into standards compliant PDFs that are accessible, searchable and usable for indexing.
Stars: โœญ 104 (-5.45%)
Mutual labels:  forms
Ftpbucket
FTPbucket is a PHP script that enables you to sync your BitBucket or GitHub repository with any web-server
Stars: โœญ 99 (-10%)
Mutual labels:  hooks
Play2 Html5tags
HTML5 form tags module for Play Framework
Stars: โœญ 101 (-8.18%)
Mutual labels:  forms
Dirty Check Forms
๐ŸฌDetect Unsaved Changes in Angular Forms
Stars: โœญ 105 (-4.55%)
Mutual labels:  forms
Uniforms
A React library for building forms from any schema.
Stars: โœญ 1,368 (+1143.64%)
Mutual labels:  forms
Jafar
๐ŸŒŸ!(Just another form application renderer)
Stars: โœญ 107 (-2.73%)
Mutual labels:  forms
Form
Form is an iOS Swift library for building and styling UIs
Stars: โœญ 99 (-10%)
Mutual labels:  forms
Iostore
ๆž็ฎ€็š„ๅ…จๅฑ€ๆ•ฐๆฎ็ฎก็†ๆ–นๆกˆ๏ผŒๅŸบไบŽ React Hooks API
Stars: โœญ 99 (-10%)
Mutual labels:  hooks
React Jsonschema Form
A React component for building Web forms from JSON Schema.
Stars: โœญ 10,870 (+9781.82%)
Mutual labels:  forms
Clean State
๐Ÿป A pure and compact state manager, using React-hooks native implementation, automatically connect the module organization architecture. ๐Ÿ‹
Stars: โœญ 107 (-2.73%)
Mutual labels:  hooks

Hooked-Form

npm version All Contributors Build Status Bundle size codecov

Documentation

Example

๐ŸŒ Installation

yarn

  yarn add hooked-form

npm

  npm i --save hooked-form

UMD

dev:

<script src="https://unpkg.com/[email protected]/dist/hooked-form.umd.js"></script>

๐ŸŽจ Example

import React from 'react';
import { HookedForm, useField } from 'hooked-form';

const StringField = ({ fieldId, label }) => {
  const [{ onChange }, { touched, error, value }] = useField(fieldId);
  const onInput = React.useCallback(e => onChange(e.currentTarget.value), [
    onChange,
  ]);
  return (
    <label>
      {label + ' '}
      <input value={value} onChange={onInput} />
      {touched && error && <div>{error}</div>}
    </label>
  );
};

const App = () => {
  return (
    <HookedForm
      onSubmit={console.log}
      validateOnBlur
      initialValues={React.useMemo(() => ({ name: '' }), [])}
      validate={values => (values.name ? {} : { name: 'Required' })}
    >
      <h3>Hooked Form</h3>
      <StringField label="Name:" fieldId="name" />
      <input type="submit" value="Submit" />
    </HookedForm>
  );
};

render(<App />, document.body);

๐Ÿ’ฟ Modern build

This library offers a modern build (ES2015 output), this is smaller and parses faster in the browser. So if you don't plan to target older browsers feel free to use this.

Webpack

  "resolve": {
    "alias": {
      "hooked-form": "hooked-form/dist/hooked-form.modern.js"
    }
  }

Parcel

  "alias": {
    "hooked-form": "hooked-form/dist/hooked-form.modern.js"
  }

๐Ÿ“ข Credits

๐Ÿ˜Contributors

Thanks goes to these wonderful people (emoji key):


Laurens Lavaert

๐Ÿ’ป

Jovi De Croock

๐Ÿš‡ โš ๏ธ ๐Ÿ‘€ ๐Ÿ“– ๐Ÿ’ป

Jonathan Callewaert

๐Ÿ›

Andrew Rempe

๐Ÿ’ป

Corentin Leruth

๐Ÿ’ป

Pavel Ravits

๐Ÿ›

Tegan Churchill

๐Ÿ›

This project follows the all-contributors specification. Contributions of any kind welcome!

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