travel website
Goal: Build a responsive, experience-driven travel discovery and trip planning website with curated content, itinerary planning, sign-in saving/sharing, and lightweight inquiry/contact flows. Planned changes: Implement responsive primary navigation and routing for Home, Destinations, Experiences, Trip Planner, About, and Contact. Define and apply a cohesive visual theme (color, typography, spacing, component styling) across all pages. Create backend data models and APIs for Destinations, Experiences, and user-owned Itineraries (including list/detail queries and itinerary CRUD). Build Home page with hero, featured destinations/experiences, and a CTA into Trip Planner (data-driven, curated content). Implement Destinations listing (search + filters) and Destination detail (overview, best time, curated weather summary, curated experience/activity and stay suggestions). Implement Experiences listing (filters) and Experience detail with practical details and “Add to Trip Plan”. Build Trip Planner for 3–10 day itineraries: select destination/length, generate days, add/remove/reorder items, add notes, and add experiences to specific days. Add sign-in/out using existing Internet Identity; allow saving/reopening itineraries and read-only public sharing via stable link/code. Add inquiry form (name/email/message) from destination/experience/itinerary views; store inquiries with timestamp and context; provide an in-app view to review submissions. Add About page content and Contact page with separate contact form stored in backend. Ensure responsive layouts, accessibility (keyboard/focus/labels/contrast), and loading/error/empty states for all data-driven views. Add seed/demo content (multiple destinations across regions, multiple experiences per destination, and at least one sample itinerary). Add generated static image assets under frontend/public/assets/generated and use them for the Home hero and destination placeholders. User-visible outcome: Users can browse curated destinations and experiences, plan a 3–10 day itinerary day-by-day, sign in to save and share read-only itineraries, and submit inquiries or contact messages—on a responsive, accessible site with consistent visuals and built-in demo content.