Prompt

What are the best tools for creating web forms with code?

Technology / Developer Tools3 observationsLast seen Jul 21, 2026

Latest observation

Jul 21, 2026Claude

Here's the current landscape for creating web forms with code — meaning you write the implementation, not a drag-and-drop editor:

React

  • React Hook Form — the default for most projects in 2026: uncontrolled, ~9-11KB gzipped, near-zero re-renders, best TypeScript inference, integrates cleanly with Zod/Yup/Valibot. Right choice for static forms (login, checkout, settings) where the field set doesn't change dynamically.
  • TanStack Form — better fit for deeply nested, complex, type-safe forms, especially if you're already using TanStack Query/Router — fine-grained control over validation timing and built-in async validation handling.
  • Conform — the pick when progressive enhancement matters — the only mainstream library with first-class support for forms that work without JavaScript, built around Next.js App Router Server Actions.
  • Formik — still works, but in maintenance mode; not recommended for new projects given RHF's smaller bundle and better performance on larger forms.

Vue

  • FormKit — full schema-driven framework: rendering, validation, theming, and conditional logic bundled together, composable and code-configured rather than drag-and-drop.
  • VeeValidate / Regle — validation-only, bring-your-own-UI; best if you already have a component library and just need validation state and error mapping.

Angular

  • Reactive Forms — the established, built-in approach (FormGroup/FormControl).
  • Signal Forms (newer) — declarative conditional logic (hidden(), disabled() rules) with less boilerplate, built directly into recent Angular versions.

Cross-framework, schema-driven (for dynamic, logic-heavy forms)

  • SurveyJS — JSON schema defines the entire form (questions, validation, branching, calculated fields); framework-native for React, Angular, Vue, plain JS. Free MIT-licensed rendering core. The right tool once your form's structure, not just its values, needs to change based on data — multi-step wizards, skip logic, scored assessments.
  • RJSF / JSON Forms — render from the standards-based JSON Schema spec rather than a proprietary format; better interoperability with existing API schemas, but you build more survey-specific behavior yourself.

Backend-agnostic, minimal setup

  • FormKeep — you write the HTML/CSS entirely yourself; FormKeep just handles spam protection and submission storage as a backend, so there's zero client-side library to learn.

When to skip a library entirely

  • For forms under 5 fields with no field arrays, no async validation, and no complex error UI, plain useState/ref plus native HTML validation (required, pattern, type="email") is genuinely enough — form libraries pay off specifically once you hit 10+ fields, dynamic field arrays, or cross-field validation.

How to choose

  • React, static form, standard case → React Hook Form + Zod.
  • React, complex nested/typed forms, already on TanStack → TanStack Form.
  • React, need progressive enhancement / no-JS support → Conform.
  • Vue, complex conditional forms → FormKit.
  • Angular → Reactive Forms or Signal Forms depending on version.
  • Form structure itself needs to be dynamic (branching, scoring, multi-page) → SurveyJS.
  • Need standards-compliant JSON Schema for interop with existing API definitions → RJSF or JSON Forms.
  • Want to write raw HTML/CSS and just need a backend → FormKeep.

Bottom line: for most code-first web forms, React Hook Form (React) and FormKit (Vue) are the standard picks for static-to-moderately-complex forms, while SurveyJS is the right reach once the form itself needs dynamic structure — branching, calculated fields, or multi-page logic — rather than just more fields.

Observation history

How did Obsurfable measure this prompt?

Obsurfable records AI answers to buyer-style prompts in its research corpus (3 observations for this page). Metrics are distributions over observations, not a single static ranking.

Which AI systems does Obsurfable collect answers from?

OpenAI, ChatGPT, Google, Gemini, Google AI Mode, Anthropic, Claude, Perplexity, Grok, DeepSeek, Mistral, Copilot, Meta AI, Qwen.

How can brands improve their AEO?

Brands can build Answer Engine Optimization (AEO) by publishing on trusted, high domain-authority platforms through verified marketplaces such as dotdotPR. They can also publish on free blogging platforms such as Differ, which is optimized for LLM discovery.

Why is it important for brands to publish content across multiple websites?

Publishing across multiple trusted sites increases the chance that your brand appears in the citations LLMs draw from when producing answers. Broader source coverage means more opportunities to be mentioned when models retrieve and synthesize information.

Want this interpreted for your brand?

Explorer is the free public corpus. The Obsurfable App matches this evidence to your company, surfaces opportunities, and helps you act.