Documentation Status
Checklist of all @saastro/forms features, components, and concepts. Use this page to track what’s documented, what needs updating, and what’s missing.
Last full review: 2026-02-25
Summary
| Category | Documented | Needs Update | Missing | Total |
|---|---|---|---|---|
| Getting Started | 2 | 0 | 0 | 2 |
| Guides | 12 | 0 | 0 | 12 |
| Field Types | 21 | 0 | 0 | 21 |
| Hooks | 11 | 0 | 0 | 11 |
| Reference | 2 | 0 | 0 | 2 |
| Total | 48 | 0 | 0 | 48 |
Getting Started
| # | Page | Status | Last Updated | Notes |
|---|---|---|---|---|
| 1 | Introduction | Documented | 2026-02-19 | Overview, zero-config, builder pattern, features |
| 2 | Installation | Documented | 2026-02-19 | npm install, peer deps, component setup, next steps |
Guides
FormBuilder API — Updated (2026-02-25)
Page: /docs/formbuilder
Covers: FormBuilder.create(), layout methods, addField(), addFields(), addStep(), initialStep(), callbacks (onSuccess, onError, onStepChange), messages, buttons, submit actions, submitAction() signature, submitExecution(), redirect, submitConfirmation(), plugins (.usePlugins(), .useDatabowl()), build validation, complete FieldBuilder reference (~30 methods grouped by category), FormBuilder methods summary, build() vs buildUnsafe() comparison with examples.
Validation — Documented (2026-02-19)
Page: /docs/validation
Covers: Zod schemas (direct), ValidationRules (serializable JSON), full property reference table (required, string, number, array, boolean, date rules), declarative FieldBuilder methods (.required(), .email(), .minLength(), etc.), 19 built-in presets table, custom presets (registerPreset(), getAvailablePresets()), custom validators via plugins, field type to Zod base type mapping table, compilation process, API reference (compileValidationRules, isZodSchema, isValidationRules, resolvePreset).
Multi-Step Forms — Documented (2026-02-19)
Page: /docs/multi-step
Covers: basic multi-step, defaultNext, initialStep(), step navigation (next/prev), step history stack, conditional routing with next conditions, 12 condition operators table, AND/OR grouping, step UI components (StepsNavigation, StepsProgress, StepsAccordion), useFormStepsInfo hook return value, StepInfo properties, per-step validation, complete multi-step onboarding example with conditional routing.
Layout System — Documented (2026-02-19)
Page: /docs/layout
Covers: manual mode (12-column grid, col-span-*, responsive breakpoints), auto mode (minFieldWidth, max columns), gap configuration, when to use each mode, API reference for FormBuilder and FieldBuilder layout methods.
Submit & Actions — Documented (2026-02-19)
Page: /docs/submit
Covers: callbacks (onSuccess/onError), submitActions system, HTTP/webhook/email/custom actions, triggers, conditions, execution modes, field mapping (simple rename, advanced transforms, resolvers, built-in transforms), API reference.
Plugins — Documented (2026-02-19)
Page: /docs/plugins
Covers: PluginManager usage, 6 lifecycle hooks table, transformConfig/transformValues pipelines (now supports async), custom field types via registerFields(), custom validators, all 5 built-in plugins (localStorage, analytics, autosave, databowl, recaptcha), creating custom plugins with definePlugin(), API reference (PluginManager methods, FormPlugin interface, ValidationContext, globalPluginManager).
Styling — Documented (2026-02-19)
Page: /docs/styling
Covers: classNames() method (wrapper, input, label, error, helper), JSON config equivalent, field order, field size, options layout for groups, hiding labels, conditional visibility by breakpoint, complete example, CSS variables, Tailwind integration, dark mode.
Grid layout content (columns, gap, breakpoints) moved to Layout System to eliminate duplication.
Buttons — Documented (2026-02-19)
Page: /docs/buttons
Covers: FormButtons, submit/next/back config, ButtonConfig props (variant, size, label, icon, effects), alignment, inline buttons, multi-step example, custom actions, API reference.
Conditional Logic — Documented (2026-02-19)
Page: /docs/conditional-logic
Covers: hidden/disabled/readOnly state properties, boolean/function/ConditionGroup modes, 12 condition operators table, AND/OR grouping, responsive breakpoint visibility (hidden/visible per breakpoint), function vs declarative comparison, complete registration form example.
Component System — Documented (2026-02-19)
Page: /docs/components
Covers: three injection modes (zero-config, glob auto-discovery, legacy provider), FormComponentsProvider with import.meta.glob, ComponentProvider + createComponentRegistry(), resolution order, full ComponentRegistry (49 slots by category), missing component handling (MissingComponentFallback), hooks (useComponents, usePartialComponents, useHasComponentProvider, useComponentMode), utility functions (mergeComponentRegistries, parseGlobModules, ComponentResolver).
command field — Documented (2026-02-19)
Page: /docs/command
Covers: cmdk-based searchable dropdown, props (options, placeholder, searchPlaceholder, emptyText), command vs combobox comparison, required components, icon support, TypeScript interface.
Utilities — Updated (2026-02-25)
Page: /docs/utilities
Covers: component utilities (getRequiredComponents, getMissingComponents, getInstallCommand, groupMissingByPackage, fieldTypeComponents, coreComponents), Tailwind utilities (getFormGridClass, getFieldClass, getHiddenClasses, pxToRem), test data generation (generateTestData, generateFieldValue, detectLocale — locale-aware, seeded, heuristic-based), field transforms (applyFieldTransforms — per-field transform execution).
Hidden Fields — Documented (2026-02-25)
Page: /docs/hidden-fields
Covers: hidden field concept, 7 built-in resolvers (timestamp, hostname, pageUrl, referrer, userAgent, ip, urlParam), resolver execution flow, useHiddenFieldResolvers hook, resolvers vs field mapping inject comparison, JSON configuration, custom resolvers, TypeScript types (FieldResolver, SerializableFieldResolver, HiddenFieldProps), API reference (resolveValue, resolveValueSync, BUILTIN_RESOLVERS).
Field Types
Text Fields
| # | Field | Status | Page | Last Updated |
|---|---|---|---|---|
| 1 | text | Documented | /docs/text | 2026-02-19 |
| 2 | email | Documented | /docs/text | 2026-02-19 |
| 3 | tel | Documented | /docs/text | 2026-02-19 |
| 4 | textarea | Documented | /docs/textarea | 2026-02-19 |
| 5 | input-group | Documented | /docs/input-group | 2026-02-19 |
Selection Fields
| # | Field | Status | Page | Last Updated |
|---|---|---|---|---|
| 6 | select | Documented | /docs/select | 2026-02-19 |
| 7 | combobox | Documented | /docs/combobox | 2026-02-19 |
| 8 | native-select | Documented | /docs/native-select | 2026-02-19 |
| 9 | radio | Documented | /docs/radio | 2026-02-19 |
| 10 | button-radio | Documented | /docs/button-radio | 2026-02-19 |
| 11 | command | Documented | /docs/command | 2026-02-19 |
Toggle Fields
| # | Field | Status | Page | Last Updated |
|---|---|---|---|---|
| 12 | checkbox | Documented | /docs/checkbox | 2026-02-19 |
| 13 | switch | Documented | /docs/switch | 2026-02-19 |
| 14 | checkbox-group | Documented | /docs/checkbox-group | 2026-02-19 |
| 15 | switch-group | Documented | /docs/switch-group | 2026-02-19 |
| 16 | button-checkbox | Documented | /docs/button-checkbox | 2026-02-19 |
| 17 | button-card | Documented | /docs/button-card | 2026-02-19 |
Date Fields
| # | Field | Status | Page | Last Updated |
|---|---|---|---|---|
| 18 | date | Documented | /docs/date | 2026-02-19 |
| 19 | daterange | Documented | /docs/daterange | 2026-02-19 |
Special Fields
| # | Field | Status | Page | Last Updated |
|---|---|---|---|---|
| 20 | slider | Documented | /docs/slider | 2026-02-19 |
| 21 | otp | Documented | /docs/otp | 2026-02-19 |
| 22 | html | Documented | /docs/html | 2026-02-19 |
| 23 | hidden | Documented | /docs/hidden | 2026-02-25 |
Hooks
All hooks have dedicated documentation pages with signature, parameters, return value, internal logic, and examples.
| # | Hook | Status | Page | Last Updated |
|---|---|---|---|---|
| 1 | useFormState | Documented | /docs/use-form-state | 2026-02-19 |
| 2 | useFormSubmit | Documented | /docs/use-form-submit | 2026-02-19 |
| 3 | useFormSteps | Documented | /docs/use-form-steps | 2026-02-19 |
| 4 | useFormStepsInfo | Documented | /docs/use-form-steps-info | 2026-02-19 |
| 5 | useFormValidation | Documented | /docs/use-form-validation | 2026-02-19 |
| 6 | useFormLayout | Documented | /docs/use-form-layout | 2026-02-19 |
| 7 | useFormButtons | Documented | /docs/use-form-buttons | 2026-02-19 |
| 8 | useSubmitActionTriggers | Documented | /docs/use-submit-action-triggers | 2026-02-19 |
| 9 | useSubmitConfirmation | Documented | /docs/use-submit-confirmation | 2026-02-19 |
| 10 | useRecaptcha | Deprecated | /docs/use-recaptcha | 2026-02-19 |
| 11 | useHiddenFieldResolvers | Documented | /docs/use-hidden-field-resolvers | 2026-02-25 |
Builders (Fluent API)
| # | Builder | Status | Page |
|---|---|---|---|
| 1 | FormBuilder | Documented | /docs/formbuilder |
| 2 | FieldBuilder | Documented | /docs/formbuilder (reference section) |
Reference Pages
| # | Page | Status | Last Updated | Notes |
|---|---|---|---|---|
| 1 | Types Reference | Documented | 2026-02-19 | All 9 type files: common, fields, buttons, steps, submitActions, logic, plugin, components, validation |
| 2 | Utilities | Documented | 2026-02-25 | Component utilities + Tailwind + test data generation + field transforms |
Types Coverage
All types are exported from @saastro/forms. Every type file now has dedicated documentation.
| # | Type File | Key Exports | Status |
|---|---|---|---|
| 1 | types/common.ts | FormConfig, FormLayout, SubmitConfirmationConfig, Breakpoint | Types Reference + Guides |
| 2 | types/fields.ts | FieldConfig (discriminated union of 21+ types) | Types Reference |
| 3 | types/buttons.ts | ButtonConfig, FormButtons | Types Reference + Buttons |
| 4 | types/steps.ts | Step, StepCondition | Types Reference + Multi-Step |
| 5 | types/submitActions.ts | SubmitActionNode, FieldMapping, BuiltinTransform | Types Reference + Submit |
| 6 | types/logic.ts | ConditionOperator, Condition, ConditionGroup | Types Reference + Conditional Logic |
| 7 | types/plugin.ts | FormPlugin, definePlugin, ValidationContext | Types Reference + Plugins |
| 8 | types/components.ts | ComponentRegistry (49 slots) | Types Reference + Component System |
| 9 | types/validation.ts | ValidationRules, SchemaType | Types Reference + Validation |
Changelog
| Date | Changes |
|---|---|
| 2026-02-25 | Full audit. Added useHiddenFieldResolvers hook page. Added generateTestData/generateFieldValue/detectLocale + applyFieldTransforms to Utilities. Added build() vs buildUnsafe() to FormBuilder. 48 items total, 0 gaps. |
| 2026-02-25 | Added hidden field type demo page + Hidden Fields conceptual guide. Covers 7 built-in resolvers, useHiddenFieldResolvers, resolveValue/resolveValueSync, BUILTIN_RESOLVERS. |
| 2026-02-19 | Documentation complete. Created Conditional Logic, Component System, command field, Utilities, and Types Reference pages. All 45 items documented, 0 missing. |
| 2026-02-19 | Created recaptchaPlugin (factory). Deprecated useRecaptcha hook. Made transformValues async-compatible. Added recaptcha to Plugins guide. |
| 2026-02-19 | Created 10 individual hook reference pages. Added “Hooks” sidebar section. Updated summary: 38 documented, 4 missing. |
| 2026-02-19 | Added Field Mapping section to Submit & Actions (BuiltinTransform, FieldResolver, applyFieldMapping). Created this status page. |
| 2026-02-19 | Created FormBuilder API, Validation, Multi-Step Forms, and Plugins guide pages. Reorganized sidebar: replaced “Core Concepts” with “Guides” section. Deduplicated Styling/Layout overlap. Fixed Installation dead links. |
| 2026-02-19 | Initial status audit: 25 items documented, 28 missing. |