DEV Community

Cover image for I rebuilt my failed React form library — here’s what actually works
Kadirul islam
Kadirul islam

Posted on

I rebuilt my failed React form library — here’s what actually works

I built a React form library 2 years ago.

It got almost zero usage.

Recently, I revisited the idea and realized the problem wasn’t the code — it was the approach.

Most form libraries are powerful, but they come with complexity:

  • too much setup
  • too much wiring
  • too much abstraction

So I rebuilt it from scratch with one goal:

Make forms stupidly simple.

The Problem

Every time I build a form in React, I repeat the same steps:

  • Manage state for each input
  • Handle validation
  • Wire everything together
  • Add conditional logic

Even with tools like React Hook Form, there's still mental overhead.

The Insight

For most use cases, developers don’t need more power.

They need less friction.

So instead of controlling every input manually, I tried this:

Define the entire form as data.

The Idea

<KiForm
  fields={[
    "email",
    "password",
    {
      name: "role",
      options: ["User", "Admin"]
    },
    {
      name: "company",
      showIf: { field: "role", equals: "Admin" }
    }
  ]}
/>






---

## Screenshot

Enter fullscreen mode Exit fullscreen mode


md
Form Preview

Demo Code

How It Works

  • You pass a JSON config
  • Fields are generated automatically
  • State is managed internally
  • Conditional logic is built-in

Feedback

I’m still validating this idea.

Would love to know:

  • Is this useful for your workflow?
  • What’s missing?
  • Where would this break?

GitHub: https://github.com/kadirulislam/ki-forms
npm: https://www.npmjs.com/package/ki-forms

Top comments (0)