SEO
Start with page structure and basic metadata.
Next.js III: SEO, i18n 2026
A training project for SEO, i18n and App Router patterns.
Start with page structure and basic metadata.
Keep locale in the URL before translating the interface.
Separate pages, shared UI and simple server components.
Demo Lab
Small isolated pages for checking patterns before they move into EventMap.
Read city from URL searchParams and filter demo events on the server.
Check raw items before they reach EventCard UI.
Show fallback data instead of a red screen when external data fails.
See how [locale], [id] and query strings appear in current EventMap routes.
See which locale and event id pairs are prepared for next build.
Compare controlled event ids with live Ticketmaster ids before static detail pages are built.
Compare controlled content, live fetch cache and preview no-store.
Compare static, dynamic, ISR, no-store and client routes in EventMap.
See how live Ticketmaster data returns to EventMap with cache policy.
See why results loaded after useEffect are weak for SEO.
See how [[...segments]] turns clean search URLs into server filters.
Active filters, reset links and pagination without client state.
See how product search tries Ticketmaster first and falls back to controlled events.
Check title, description, canonical, hreflang, sitemap and robots in the final SEO baseline.
See how a layout can render children and @modal slot at the same time.
Compare a UX modal route with a full SEO detail page.
See how a page shell can render before a slow server block finishes.
See where browser client, server client, Auth and Postgres fit into EventMap.
See how favorites table, grants and RLS policies protect user rows.
See how Magic Link, Google OAuth, callback route and safe redirect work together.
See how guest localStorage favorites switch to account-based favorites with RLS.
See how Product EventMap, Demo Lab, server/client boundaries and backend options fit together.