Kunthawat Greethong 9147821a16 fix: add optional chaining to all .map() calls in MarketingBlocks
The error "Cannot read properties of undefined (reading 'map')"
indicates some block fields are undefined. Added optional chaining
(?.) to all nested .map() calls for features, testimonials,
plans, and items arrays.

Also renamed prop from 'value' to 'blocks' and added check
for pageContent.length > 0.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-01 12:40:16 +07:00

Marketing Template

A conversion-focused landing page with pricing and contact form. Built on Astro + EmDash CMS.

Features

  • Hero with CTAs
  • Feature grid
  • Pricing cards
  • FAQ and contact form
  • EmDash CMS for content management

Commands

npm run dev        # Start dev server
npm run build      # Build for production
npm run bootstrap  # Initialize database and seed content

Pages

  • / - Homepage with hero, features, testimonials, FAQ
  • /pricing - Pricing page with plans comparison
  • /contact - Contact form

Admin

Access the CMS at /_emdash/admin after running bootstrap.

Description
No description provided
Readme 202 KiB
Languages
Astro 88.8%
TypeScript 6.2%
CSS 2.4%
JavaScript 1.2%
Dockerfile 0.9%
Other 0.5%