{"_id":"@evoja-web/react-form","_rev":"5-8513fe82631009cbc97b6cfa55ec5f46","name":"@evoja-web/react-form","dist-tags":{"latest":"51.5.0"},"versions":{"51.1.0":{"name":"@evoja-web/react-form","version":"51.1.0","keywords":["react","form","validation","hooks","state-management","accessible","evoja"],"author":{"name":"Evoja Web Contributors"},"license":"MIT","_id":"@evoja-web/react-form@51.1.0","maintainers":[{"name":"poopoopapa","email":"poopoopapaatoz@gmail.com"}],"bin":{"react-form":"index.js"},"dist":{"shasum":"472511a1be4496b29ebfafb7ad5f06b543594f27","tarball":"https://registry.npmjs.org/@evoja-web/react-form/-/react-form-51.1.0.tgz","fileCount":4,"integrity":"sha512-RB4d5/BaQ94hjJgDxZubbQ6OpSl+Sdr2lb3ZK3vpRp940VFHwLINO3rwHUp86IUrxGzvI3TOLg6Y0Tm2ub+SqQ==","signatures":[{"sig":"MEQCIAaxfY995HW/nCFAWxn6hy56YwGWb2h6alKlrrzzM/7aAiATABZxbGAlcONTxVmJqEjdKhiNX+rJ218nXsmTCn0ikg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6535},"main":"index.js","_npmUser":{"name":"poopoopapa","email":"poopoopapaatoz@gmail.com"},"_npmVersion":"9.2.0","description":"Flexible and extensible React form components with built-in validation and state management.","directories":{},"_nodeVersion":"20.19.5","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/react-form_51.1.0_1775365653690_0.7482084789397772","host":"s3://npm-registry-packages-npm-production"}},"51.5.0":{"name":"@evoja-web/react-form","version":"51.5.0","description":"Flexible and extensible React form components with built-in validation and state management.","main":"index.js","bin":{"react-form":"index.js"},"keywords":["react","form","validation","hooks","state-management","accessible","evoja"],"author":{"name":"Evoja Web Contributors"},"license":"MIT","publishConfig":{"access":"public"},"_id":"@evoja-web/react-form@51.5.0","_nodeVersion":"20.19.5","_npmVersion":"9.2.0","dist":{"integrity":"sha512-49dcz1H/+4OlGSIeHA0wugKcXYUsD2St/CkVZ4KIUb+nc8hr+W0vI7Zv9UlYzrutZEJ/D/9hRKHRhK9+Ax2NZA==","shasum":"0b5d12b76d4c7fb7fbf06755998dd1251a4bb672","tarball":"https://registry.npmjs.org/@evoja-web/react-form/-/react-form-51.5.0.tgz","fileCount":4,"unpackedSize":4694,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQD9Sd3myLskqjNvGrzgecHov/M/yktxvr2S3AhZmNOelgIhAOSKtNshoIgrAjpCYGt7tIwO3MIOgVL70AA6bNXBf5oS"}]},"_npmUser":{"name":"poopoopapa","email":"poopoopapaatoz@gmail.com"},"directories":{},"maintainers":[{"name":"poopoopapa","email":"poopoopapaatoz@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/react-form_51.5.0_1776941714206_0.8670764523952583"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-05T05:07:33.584Z","modified":"2026-04-23T10:55:14.491Z","51.0.5":"2026-04-02T15:42:56.139Z","51.0.6":"2026-04-02T16:40:32.040Z","51.1.0":"2026-04-05T05:07:33.834Z","51.5.0":"2026-04-23T10:55:14.339Z"},"author":{"name":"Evoja Web Contributors"},"license":"MIT","keywords":["react","form","validation","hooks","state-management","accessible","evoja"],"description":"Flexible and extensible React form components with built-in validation and state management.","maintainers":[{"name":"poopoopapa","email":"poopoopapaatoz@gmail.com"}],"readme":"# @evoja-web/react-form\n\nFlexible and extensible React form components with built-in validation and state management. Designed for performance and accessibility.\n\n## Features\n- **Zero Dependencies**: Lightweight and fast, keeping your bundle size small.\n- **Validation**: Built-in support for email, required fields, and custom regex patterns.\n- **Hooks Support**: Includes the `useForm` hook for modern functional components.\n- **Accessible**: Fully follows WAI-ARIA guidelines for all form inputs and error states.\n- **Extensible**: Easily create custom input components that integrate with the form state.\n\n## Installation\nInstall the package via npm:\n\n```bash\nnpm install @evoja-web/react-form\n```\n\n## Usage\nIntegrating `@evoja-web/react-form` into your project is straightforward. Here is a basic example:\n\n```jsx\nimport React from 'react';\nimport { Form, Field, validateEmail } from '@evoja-web/react-form';\n\nconst MyForm = () => {\n  const handleSubmit = (data) => {\n    console.log('Form Submitted:', data);\n  };\n\n  return (\n    <Form onSubmit={handleSubmit}>\n      <div className=\"form-group\">\n        <label>Email Address</label>\n        <Field\n          name=\"email\"\n          type=\"email\"\n          validate={validateEmail}\n          placeholder=\"enter@example.com\"\n        />\n      </div>\n      <button type=\"submit\">Submit</button>\n    </Form>\n  );\n};\n\nexport default MyForm;\n```\n\n## API Reference\n\n| Component | Description |\n|---|---|\n| `Form` | The wrapper component that manages form state. |\n| `Field` | Individual input component linked to the form state. |\n| `useForm` | Hook to access form state and validation methods. |\n\n## Support\nFor issues, bug reports, or feature requests, please contact the maintainers through the official repository channels.\n\n## License\nMIT © Evoja Web Contributors\n","readmeFilename":"README.md"}