Part 10

Contact Section

Contact form sections with Valibot validation for each theme.

The Contact section provides validated contact forms. Each theme has its own visual style, but they all share the same Valibot-based validation logic.

Theme Variants

ThemeComponentStyle
LiquidContactLiquid.astroFluid form design with gradient accents
GlassContactGlass.astroFrosted glass form card
NeoContactNeo.astroBold, high-contrast form
LuxuryContactLuxury.astroPremium form with gold details
MinimalContactMinimal.astroClean, simple contact form
AuroraContactAurora.astroGradient background form

All variants are located at src/components/sections/contact/.

Validation

Contact forms use Valibot for lightweight, type-safe validation on both client and server.

  • Client-side validation provides instant UI feedback.
  • The shared schema lives at src/lib/schemas/contact.ts.
  • Validation error messages are fully translated via src/locales/{lang}/contact.json.

See the Forms & Validation Guide for details.

Content Source

Contact content and validation messages are loaded from src/locales/{lang}/contact.json.

ℹ️
No Props

Contact components take no external props. To edit form labels or validation messages, update src/locales/{lang}/contact.json.