Open-source form-handling software
735 open-source libraries, tools and applications tagged form-handling, ranked by how closely form-handling is their primary purpose, then by adoption and maintenance health. Each entry links to a page with sources, use cases and when to choose or avoid it.
735 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| React Hook Form React Hook Form is a lightweight library that provides hooks for managing form state and validation in React applications. It works with bo… | 97 | 44865 | active |
| colinhacks/zod Zod is a TypeScript‑first schema validation library that provides runtime validation with static type inference. It lets you define schemas… | 94 | 44076 | active |
| jaredpalmer/formik Formik is a popular open-source form library for React and React Native that manages form state, validation, and submission. It provides de… | 56 | 34305 | stable |
| Filament Filament is an open-source UI framework built on Laravel that provides ready‑made components for admin panels, forms, tables, and dashboard… | 95 | 32254 | active |
| Mantine Mantine is a fully featured React components library with 120+ customizable components and 70+ hooks for building accessible web applicatio… | 96 | 31849 | stable |
| Pydantic Pydantic is a Python library that validates and parses data using type hints. It provides fast, extensible schema validation and JSON‑Schem… | 99 | 28972 | active |
| JedWatson/react-select React-Select is the widely used select/dropdown/combobox component library for React, offering searchable, multi-select, and highly customi… | 68 | 28019 | stable |
| Automattic/mongoose Mongoose is a JavaScript library that provides an object data modeling (ODM) layer for MongoDB. It offers schema definitions, validation, c… | 94 | 27467 | active |
| Select2 Select2 is a jQuery-based library that replaces standard HTML select boxes with a feature‑rich UI component. It adds searching, tagging, re… | 81 | 25908 | active |
| validatorjs/validator.js A JavaScript library of string validators and sanitizers for Node.js and browsers. It provides dozens of checks like isEmail, isURL, and is… | 83 | 23740 | stable |
| Pure CSS Pure is a lightweight set of responsive CSS modules that provide a solid base, grid system, and common UI components. It is designed to be … | 49 | 23723 | active |
| jquense/yup Yup is a TypeScript schema builder for runtime value parsing and validation, letting you define object schemas that coerce, transform, and … | 68 | 23656 | stable |
| hapijs/joi Joi is a schema description language and data validator for JavaScript, allowing developers to define validation rules for objects and valu… | 75 | 21166 | stable |
| baidu/amis amis is a frontend low-code framework from Baidu that generates admin pages and UIs from JSON configuration. It lets developers build compl… | 59 | 18897 | stable |
| flatpickr/flatpickr flatpickr is a lightweight, dependency-free JavaScript datetime picker library for web forms, supporting date, time, range, and multiple-da… | 23 | 16463 | stable |
| rjsf-team/react-jsonschema-form A React component library that declaratively builds and validates web forms from JSON Schema. It supports multiple UI themes (MUI, Bootstra… | 98 | 15909 | stable |
| alibaba/hooks ahooks is a high-quality, reliable React Hooks library written in TypeScript by Alibaba. It provides a comprehensive collection of basic an… | 92 | 14976 | stable |
| formbricks/formbricks Formbricks is an open-source, privacy-first experience management (XM) suite and Qualtrics alternative built around a survey platform. It s… | 95 | 13094 | active |
| Formily Formily is a high-performance cross-framework form solution for React, React Native, Vue 2, and Vue 3 that manages field state independentl… | 43 | 12591 | stable |
| downshift Downshift is a set of React primitives (hooks and a render-prop component) for building accessible autocomplete, combobox, select, and tag-… | 86 | 12302 | stable |
| typestack/class-validator A TypeScript library providing decorator-based and non-decorator-based property validation for classes, built on validator.js. It supports … | 68 | 11839 | stable |
| xmartlabs/Eureka Eureka is an elegant iOS form builder written in Swift that lets developers construct dynamic forms using a concise operator-based DSL on t… | 23 | 11803 | stable |
| egulias/EmailValidator A PHP library for validating email addresses against multiple RFC standards (5321, 5322, 6530-6532, 1035). It offers pluggable validation s… | 32 | 11639 | stable |
| Pkl Pkl is a configuration-as-code language from Apple with rich validation, templating, and tooling for defining programmable, scalable, and s… | 85 | 11542 | active |
| logaretm/vee-validate vee-validate is a form validation and state management library for Vue.js, supporting both Vue 2 and Vue 3. It handles value tracking, vali… | 62 | 11259 | stable |
| laravel-admin laravel-admin is an administrative interface builder for the Laravel PHP framework that generates full-featured CRUD backends with just a f… | 55 | 11133 | active |
| react-dropzone/react-dropzone A React library providing a hook and component for building HTML5-compliant drag-and-drop file upload zones. It handles drag events, file s… | 100 | 11017 | stable |
| baptisteArno/typebot.io Typebot is a fair-source, self-hostable visual chatbot builder that lets users create advanced conversational apps and forms with 45+ build… | 97 | 10507 | active |
| jquery-validation/jquery-validation The jQuery Validation Plugin provides drop-in client-side form validation for existing HTML forms, with extensive support for custom rules … | 79 | 10316 | stable |
| FluentValidation/FluentValidation FluentValidation is a popular .NET library for building strongly-typed validation rules with a fluent interface. It lets developers define … | 88 | 9761 | stable |
| yiminghe/async-validator A JavaScript/TypeScript library for asynchronous validation of objects against declarative schema descriptors, supporting sync validators, … | 32 | 9085 | stable |
| heyform/heyform HeyForm is an open-source, self-hostable form builder for creating conversational forms, surveys, quizzes, and polls with conditional logic… | 93 | 9037 | active |
| open-circle/valibot Valibot is a modular, type-safe schema library for TypeScript that validates and parses unknown structural data at runtime while inferring … | 93 | 9021 | stable |
| x-extends/vxe-table vxe-table is a Vue-based table component library supporting both Vue 2 and Vue 3, built on Vxe UI. It provides an enterprise-grade data gri… | 93 | 8632 | active |
| Hacker0x01/react-datepicker A simple and reusable datepicker component for React applications, supporting date selection, time picking, ranges, and localization via da… | 69 | 8383 | stable |
| jackocnr/intl-tel-input A JavaScript library for entering, formatting, and validating international telephone numbers, available as a vanilla JS library and as nat… | 95 | 8261 | stable |
| Simple Form Simple Form is a Ruby gem that provides a flexible DSL for building forms in Rails applications without imposing markup opinions. It wraps … | 66 | 8228 | stable |
| ng-bootstrap/ng-bootstrap A library of Angular components built from scratch on top of Bootstrap 5 CSS, with APIs designed for the Angular ecosystem. It provides wid… | 76 | 8226 | active |
| railsadminteam/rails_admin RailsAdmin is a Rails engine that adds an easy-to-use admin interface for managing application data. It provides automatic CRUD, search, fi… | 75 | 7956 | active |
| alibaba/x-render XRender is a family of React libraries from Alibaba for building admin/enterprise forms, search tables, and charts from JSON schema with mi… | 64 | 7856 | active |
| tabulator-tables/tabulator Tabulator is a JavaScript library for creating fully featured, interactive tables and data grids from HTML tables, JavaScript arrays, AJAX … | 100 | 7788 | active |
| marshmallow-code/marshmallow marshmallow is a lightweight, framework-agnostic Python library for converting complex objects to and from native Python datatypes using de… | 75 | 7238 | stable |
| Kiranism/next-shadcn-dashboard-starter A free, MIT-licensed admin dashboard starter template built with Next.js 16, shadcn/ui, Tailwind CSS v4, and TypeScript. It provides produc… | 88 | 7142 | active |
| FormCreate FormCreate is a low-code Vue form generation library that renders dynamic forms from JSON data, with validation, data collection, submissio… | 85 | 7108 | stable |
| gpbl/react-day-picker React DayPicker is a customizable date picker component library for React, supporting single, multiple, and range date selections with exte… | 98 | 6860 | stable |
| Choices-js/Choices Choices.js is a lightweight, configurable vanilla JavaScript library that enhances select boxes and text inputs with searchable, multi-sele… | 90 | 6826 | active |
| gcanti/io-ts io-ts is a TypeScript library providing a runtime type system for decoding and encoding data at IO boundaries. Codecs combine static types … | 23 | 6815 | stable |
| shentao/vue-multiselect A dependency-free Vue.js component providing single select, multiselect, tagging, and searchable dropdown functionality. Version 3 is compa… | 78 | 6781 | stable |
| TanStack/form TanStack Form is a headless, type-safe form state management library for TypeScript/JavaScript with adapters for React, Vue, Angular, Solid… | 91 | 6699 | stable |
| RobinHerbots/Inputmask Inputmask is a JavaScript library that creates input masks to enforce predefined input formats such as dates, numbers, and phone numbers. I… | 75 | 6460 | active |
| al1abb/invoify Invoify is a free, web-based invoice generator built with Next.js, TypeScript, React, and shadcn/ui. Users fill in a form, pick from 13 tem… | 69 | 6364 | active |
| wasabeef/richeditor-android A rich text WYSIWYG editor component library for Android, built in Java and distributed via Maven Central. It provides a WebView-based edit… | 32 | 6342 | stable |
| CUE CUE is an open-source data validation language and inference engine for defining, generating, and validating text-based and dynamic configu… | 94 | 6280 | active |
| express-validator/express-validator express-validator is an Express.js middleware wrapping the validator.js library for request validation and sanitization. It lets you declar… | 80 | 6233 | stable |
| pallets-eco/flask-admin Flask-Admin is a batteries-included Flask extension for auto-generating administrative interfaces with CRUD views for your models. It is in… | 98 | 6066 | active |
| thoughtbot/administrate Administrate is a Rails engine (gem) that generates flexible, customizable admin dashboards for Rails applications. It provides clean CRUD … | 69 | 6032 | stable |
| Respect/Validation Respect/Validation is a standalone PHP validation library offering a fluent interface with over 150 fully tested validators. It simplifies … | 94 | 6031 | active |
| leongersen/noUiSlider noUiSlider is a lightweight, dependency-free JavaScript range slider library written in TypeScript. It offers ARIA accessibility, keyboard … | 23 | 5801 | stable |
| ResearchKit/ResearchKit ResearchKit is an open-source framework for building iOS apps for medical and other research studies. It provides pre-built UI modules for … | 66 | 5749 | active |
| Unlayer Email Editor An official React component that embeds Unlayer's drag-and-drop email editor into any React application. It lets developers load and save e… | 91 | 5232 | active |
| formtastic/formtastic Formtastic is a Rails FormBuilder DSL plugin for generating semantic, accessible, and easily stylable HTML forms. It provides a concise inp… | 59 | 5211 | stable |
| uNmAnNeR/imaskjs A dependency-free vanilla JavaScript input masking library that formats user input in text fields for patterns like phone numbers, dates, n… | 23 | 5182 | active |
| django-crispy-forms A Django app that provides a filter and template tag for rendering forms with elegant, configurable div-based HTML layouts. It lets develop… | 82 | 5151 | stable |
| libphonenumber-for-php A PHP port of Google's libphonenumber library for parsing, formatting, storing, and validating international phone numbers. It also provide… | 98 | 5069 | active |
| Tencent/tmagic-editor TMagic is a visual page-building (low-code) platform from Tencent, written in TypeScript with Vue 3. It provides an editor package, runtime… | 97 | 4943 | active |
| surveyjs/survey-library SurveyJS Form Library is a free, MIT-licensed JavaScript library for rendering dynamic, JSON-driven forms, surveys, quizzes, and multi-step… | 93 | 4884 | stable |
| ant-design/pro-components ProComponents is a React UI component library built on top of Ant Design, offering enterprise-grade components like advanced tables, forms,… | 79 | 4839 | active |
| abuanwar072/E-commerce-Complete-Flutter-UI FlutterShop is a Flutter UI template for building e-commerce mobile apps, offering 100+ pre-built screens covering onboarding, authenticati… | 75 | 4838 | active |
| pywebio/PyWebIO PyWebIO is a Python framework that lets you build interactive web applications using imperative, script-style input and output functions, t… | 35 | 4815 | active |
| Orchid Laravel Admin Platform Orchid is a free, open-source Laravel package for rapid code-driven development of back-office applications, admin panels, and dashboards. … | 87 | 4797 | active |
| formkit/formkit FormKit is a form framework for React and Vue that provides a single-component API with co-located validation, automatic data structuring, … | 85 | 4777 | active |
| jamiewilson/form-to-google-sheets A JavaScript snippet plus Google Apps Script that lets any static HTML form submit its data directly into a Google Sheet via the Fetch API … | 57 | 4747 | active |
| carltongibson/django-filter A reusable Django application that lets developers declaratively filter QuerySets based on user selections from URL parameters. It provides… | 67 | 4683 | stable |
| sagalbot/vue-select A lightweight, zero-dependency Vue component that replaces the native HTML <select> element with a feature-rich, accessible dropdown/combob… | 50 | 4669 | stable |
| Tailwind CSS Forms An official Tailwind CSS plugin that provides a basic reset for form element styles, making inputs, selects, textareas, and checkboxes easy… | 61 | 4565 | active |
| EasyCorp/EasyAdminBundle EasyAdminBundle is a Symfony bundle that generates complete, beautiful admin backends (CRUD panels) from Doctrine entities. It provides das… | 94 | 4311 | stable |
| symfony/config The Symfony Config component is a PHP library for finding, loading, combining, autofilling, and validating configuration values from any so… | 95 | 4275 | stable |
| go-ozzo/ozzo-validation ozzo-validation is an idiomatic Go package for configurable and extensible data validation. It uses normal programming constructs instead o… | 93 | 4152 | stable |
| msgspec/msgspec msgspec is a fast Python serialization and validation library supporting JSON, MessagePack, YAML, and TOML. It combines high-performance en… | 80 | 4122 | stable |
| s-yadav/react-number-format A React library for formatting numbers in inputs or as text, with a lightweight caret engine that restricts input to specific numeric or st… | 62 | 4100 | stable |
| taiga-family/taiga-ui Taiga UI is a fully-treeshakable Angular UI kit consisting of multiple base libraries and add-ons, offering 130+ components and 100+ direct… | 96 | 4070 | active |
| Dcat Admin Dcat Admin is a Laravel-based admin panel builder that lets developers create full-featured, attractive back-office systems with minimal co… | 32 | 4020 | active |
| t3-oss/t3-env A TypeScript library for defining and validating environment variables with full type safety using any Standard Schema compliant validator … | 72 | 4009 | active |
| shadcnblocks/kibo Kibo UI is a custom registry of composable, accessible React components designed as an extension to shadcn/ui, built with TypeScript and Ta… | 60 | 3947 | active |
| middyjs/middy Middy is a Node.js middleware engine for AWS Lambda that lets developers attach modular, reusable middlewares (before/after/onError phases)… | 92 | 3905 | stable |
| yairEO/tagify Tagify is a lightweight, feature-rich tags input component that transforms HTML input or textarea elements into interactive tag editors. It… | 97 | 3894 | active |
| didi/xiaoju-survey XIAOJUSURVEY is an open-source enterprise form builder and analytics platform for creating questionnaires, exams, polls, quizzes, and compl… | 66 | 3798 | active |
| wojtekmaj/react-calendar A calendar component library for React applications, supporting date and month picking. It is a well-maintained MIT-licensed npm package wr… | 76 | 3789 | stable |
| OpnForm/OpnForm OpnForm is an open-source, no-code form builder for creating forms, surveys, and workflows with unlimited submissions, conditional logic, f… | 96 | 3744 | active |
| jsonrainbow/json-schema A PHP library for validating JSON data structures against JSON Schema, supporting Draft-3, Draft-4, Draft-6, Draft-7, and Draft 2019-09. It… | 99 | 3625 | active |
| Megabit/Blazorise Blazorise is a source-available UI component library for Blazor (.NET) offering 100+ strongly-typed components that render through multiple… | 66 | 3535 | stable |
| alibaba/designable Designable is a React-based library for building visual designers and low-code/no-code builders, such as form, table, chart, and app builde… | 26 | 3525 | active |
| vantezzen/autoform AutoForm is a React library that automatically renders forms from existing validation schemas (Zod, Yup, Joi). It is agnostic to UI librari… | 67 | 3494 | active |
| trailblazer/trailblazer Trailblazer is a Ruby framework of around 40 gems that structures business logic through abstractions like operations (service objects), fo… | 43 | 3473 | stable |
| primefaces/primevue PrimeVue is a comprehensive Vue UI component library offering dozens of components like tables, datepickers, trees, and selects. The reposi… | 88 | 14454 | maintenance |
| ng-select/ng-select ng-select is a lightweight, all-in-one native Angular select component providing dropdown, multiselect, and autocomplete functionality. It … | 92 | 3371 | active |
| getkin/kin-openapi A Go library implementing the OpenAPI 2.0, 3.0, 3.1, and (partially) 3.2 specifications. It provides parsing, conversion, and validation of… | 99 | 3302 | active |
| guilhermerodz/input-otp input-otp is an accessible, unstyled React component for one-time passcode input that renders a single invisible real text input with custo… | 77 | 3268 | stable |
| futuretap/InAppSettingsKit InAppSettingsKit is an open-source iOS framework that presents an app's Settings.bundle settings screen inside the app itself, in addition … | 69 | 3214 | stable |
| Studio Admin Dashboard Template A modern admin dashboard template built with Next.js 16, TypeScript, Tailwind CSS v4, and Shadcn UI. It ships with multiple prebuilt dashbo… | 68 | 3126 | active |
page 1 / 8 next →