feat: organizers, meetups UI, Plausible analytics, and migration tooling

- Add organizer model/API, admin and public organizer pages, meetup cards
- Refresh events/home/contact; add calendar dialog and carousel components
- Optional Plausible via NEXT_PUBLIC_PLAUSIBLE_* env vars in root layout
- Prisma migration, seed updates, baseline-and-migrate script

Made-with: Cursor
This commit is contained in:
bbe
2026-04-04 21:55:34 +02:00
parent 586b572f73
commit 78271ea110
37 changed files with 1555 additions and 301 deletions

View File

@@ -56,6 +56,16 @@ async function main() {
});
}
const defaultOrganizer = await prisma.organizer.upsert({
where: { slug: 'belgian-bitcoin-embassy' },
update: {},
create: {
id: '00000000-0000-4000-8000-000000000001',
name: 'Belgian Bitcoin Embassy',
slug: 'belgian-bitcoin-embassy',
},
});
const existingMeetup = await prisma.meetup.findFirst({
where: { title: 'Monthly Bitcoin Meetup' },
});
@@ -70,8 +80,9 @@ async function main() {
time: '19:00',
location: 'Brussels, Belgium',
link: 'https://meetup.com/example',
status: 'UPCOMING',
status: 'PUBLISHED',
featured: true,
organizerId: defaultOrganizer.id,
},
});
}