import { Navbar } from "@/components/public/Navbar"; import { Footer } from "@/components/public/Footer"; import { MeetupCard } from "@/components/public/MeetupCard"; import { AddToCalendarButton } from "@/components/public/AddToCalendarDialog"; import { fetchMeetupsLive, partitionMeetups } from "@/lib/meetupsData"; // Render at request time from the live backend so crawlers (no JS) always get // the real list, and the count stays in lock-step with /events.md and /llms.txt. export const dynamic = "force-dynamic"; export default async function EventsPage() { const meetups = await fetchMeetupsLive(); const { upcoming, past } = partitionMeetups(meetups); return ( <>

Belgian Bitcoin Embassy

All Events

Past and upcoming Bitcoin meetups in Belgium.

Upcoming {upcoming.length > 0 && ( {upcoming.length} )}

{upcoming.length === 0 ? (

No upcoming events scheduled. Check back soon.

) : (
{upcoming.map((m) => ( ))}
)}
{past.length > 0 && (

Past Events

{past.map((m) => ( ))}
)}