Create and deploy mobile-friendly forms with customizable fields, real-time validation, conditional logic, and integration options for various platforms.
---
name: Forms
slug: forms
version: 1.0.0
description: Create, validate, and deploy forms with field types, validation patterns, conditional logic, and platform integrations.
metadata: {"clawdbot":{"emoji":"๐","requires":{"bins":[]},"os":["linux","darwin","win32"]}}
---
## Quick Reference
| Topic | File |
|-------|------|
| Field types by use case | `types.md` |
| Platform comparisons | `platforms.md` |
| Code generation (React, Flutter) | `code.md` |
| Validation patterns | `validation.md` |
| Integrations (webhooks, CRMs) | `integrations.md` |
| Self-hosted options | `selfhosted.md` |
## User Profile
<!-- Edit to customize form suggestions -->
### Preferred Stack
<!-- react | flutter | vue | html | no-code -->
### Primary Use Case
<!-- leads | surveys | applications | feedback | registration -->
### Default Platform
<!-- google-forms | typeform | tally | heyform | code-only -->
## Data Storage
Store form definitions and templates in ~/forms/:
- templates โ Reusable form definitions (JSON/YAML)
- submissions โ Collected responses (if self-hosted)
- feedback โ What converts well, what fails
## Core Rules
- Ask use case before suggesting fields โ lead form โ application form
- Progressive disclosure: start minimal, reveal complexity if needed
- Mobile-first: every form must work on phone
- Never more than 7 fields for lead capture โ each field drops conversion ~10%
- Multi-step > single long form for 5+ fields
- Validate on blur, not just submit โ immediate feedback
- Always include: clear labels, error states, success confirmation
- GDPR checkbox mandatory for EU โ link to privacy policy
- Honeypot over CAPTCHA when possible โ less friction
- File uploads need type + size limits โ prevent abuse
- Conditional logic syntax: `IF field=value THEN show/hide field`
- Test on real devices โ emulators miss keyboard quirks
don't have the plugin yet? install it then click "run inline in claude" again.