Skip to content
form-creator logo

Form Creator

form-creator

Create forms, validation schemas, and CRUD API endpoints. Use when building new data entry features or managing existing forms.

SKILL.md

Full skill instructions

Form Creator

Instructions

1. Validation Schema

  • File: src/​lib/​validations/​{feature}.schema.ts
  • Action: Define Zod schema and export inferred type.
    export const featureSchema = z.object({ ... });
    export type FeatureFormValues = z.infer<typeof featureSchema>;
    

2. Form Component

  • File: src/​components/​forms/​{feature}-form.tsx
  • Directives: "use client"; required.
  • Setup: Use useForm with zodResolver.
  • Props: Accept initialData and onSubmit.
  • UI: Use Shadcn components (Form, FormField, Input).

3. API Routes

  • File: src/​app/​api/​{feature}/​route.ts
  • Security: Wrap with withAuthRequired or withSuperAdminAuthRequired.
  • Logic:
    • GET: Handle pagination/​search.
    • POST: Validate body against schema -> Insert to DB.
    • PATCH: Validate partial body -> Update DB.

Reference

For code patterns, best practices, and examples, see reference.md.