gitwtfhub

wtf is form?

aeneasr/form — explained in plain English

Analysis updated 2026-07-17 · repo last pushed 2019-03-08

1GoAudience · developerComplexity · 2/5DormantSetup · easy

TL;DR

A Go library that converts URL-encoded form data into typed Go structs and back, handling nested arrays and maps automatically.

Mindmap

mindmap
  root((repo))
    What it does
      Decodes form data
      Encodes structs to forms
      Handles nested fields
    Tech stack
      Go
    Use cases
      Parse HTML form POSTs
      Build APIs
      User registration forms
    Audience
      Go developers
      Backend engineers
    Notes
      Custom type conversion
      Fast benchmarks

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Parse an HTML form POST request straight into a typed Go struct instead of manually converting strings.

REASON 2

Build a user registration endpoint that turns submitted name, age, email, and phone fields into a User struct.

REASON 3

Convert a Go struct back into URL-encoded form data to send in a request.

REASON 4

Handle nested form fields like arrays of addresses or maps of settings via naming conventions.

What's in the stack?

Go

How it stacks up

aeneasr/formaegrail/aegrail-engineakarshsatija/stencil
Stars111
LanguageGoGoGo
Last pushed2019-03-082021-04-12
MaintenanceDormantDormant
Setup difficultyeasyhardhard
Complexity2/55/54/5
Audiencedeveloperops devopsdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · easy Time to first run · 30min

Yoink these prompts

Prompt 1
Show me how to use aeneasr/form to decode a POST request's form data into a Go struct.
Prompt 2
Help me register a custom type conversion for this library to handle a special field in my form.
Prompt 3
Write a Go handler that uses this package to parse a registration form with nested address fields.
Prompt 4
Explain how the Address[0].Name naming convention maps form fields into nested Go structs in this library.

Frequently asked questions

wtf is form?

A Go library that converts URL-encoded form data into typed Go structs and back, handling nested arrays and maps automatically.

What language is form written in?

Mainly Go. The stack also includes Go.

Is form actively maintained?

Dormant — no commits in 2+ years (last push 2019-03-08).

How hard is form to set up?

Setup difficulty is rated easy, with roughly 30min to a first successful run.

Who is form for?

Mainly developer.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.