diff --git a/apps/web/public/assets/ichtusantwerpen.png b/apps/web/public/assets/ichtusantwerpen.png
new file mode 100644
index 0000000..c5f3d24
Binary files /dev/null and b/apps/web/public/assets/ichtusantwerpen.png differ
diff --git a/apps/web/src/components/homepage/Footer.tsx b/apps/web/src/components/homepage/Footer.tsx
index 46822ac..63de3f0 100644
--- a/apps/web/src/components/homepage/Footer.tsx
+++ b/apps/web/src/components/homepage/Footer.tsx
@@ -86,6 +86,26 @@ export default function Footer() {
{/* Vertical rule */}
+ {/* Ichtus Antwerpen */}
+
+
+
+ Ichtus Antwerpen
+
+
+
+ {/* Vertical rule */}
+
+
{/* Vlaanderen */}
- VRIJDAG 18
+ VRIJDAG 24
april
@@ -153,7 +153,7 @@ export default function Hero() {
VRIJDAG
- 18 april
+ 24 april
diff --git a/apps/web/src/components/homepage/Info.tsx b/apps/web/src/components/homepage/Info.tsx
index c16d9c0..0ac0f0a 100644
--- a/apps/web/src/components/homepage/Info.tsx
+++ b/apps/web/src/components/homepage/Info.tsx
@@ -14,6 +14,12 @@ const faqQuestions = [
answer:
"Elke deelnemer krijgt 5-7 minuten podiumtijd. Zo houden we de avond dynamisch en krijgt iedereen een kans om te shinen.",
},
+ {
+ question: "Waar vindt het plaats?",
+ answer:
+ "De Open Mic Night vindt plaats op Lange Winkelstraat 5, 2000 Antwerpen.",
+ mapUrl: "https://maps.app.goo.gl/kU6iug3QVKwWD1vR7",
+ },
{
question: "Wat moet ik meenemen?",
answer:
@@ -179,6 +185,16 @@ export default function Info() {
{item.question}
{item.answer}
+ {"mapUrl" in item && (
+
+ Bekijk op Google Maps →
+
+ )}
))}
diff --git a/apps/web/src/routes/__root.tsx b/apps/web/src/routes/__root.tsx
index ce54244..c2f14e9 100644
--- a/apps/web/src/routes/__root.tsx
+++ b/apps/web/src/routes/__root.tsx
@@ -17,7 +17,7 @@ import appCss from "../index.css?url";
const siteUrl = "https://kunstenkamp.be";
const siteTitle = "Kunstenkamp Open Mic Night - Ongedesemd Woord";
const siteDescription =
- "Doe mee met de Open Mic Night op 18 april! Een avond vol muziek, theater, dans, woordkunst en meer. Iedereen is welkom - van beginner tot professional.";
+ "Doe mee met de Open Mic Night op 24 april! Een avond vol muziek, theater, dans, woordkunst en meer. Iedereen is welkom - van beginner tot professional.";
const eventImage = `${siteUrl}/assets/og-image.jpg`;
export interface RouterAppContext {
diff --git a/apps/web/src/routes/contact.tsx b/apps/web/src/routes/contact.tsx
index 8a16834..f729730 100644
--- a/apps/web/src/routes/contact.tsx
+++ b/apps/web/src/routes/contact.tsx
@@ -38,10 +38,10 @@ function ContactPage() {
Open Mic Night
- Vrijdag 18 april 2026
+ Vrijdag 24 april 2026
Aanvang: 19:00 uur
- Locatie wordt later bekendgemaakt aan geregistreerde deelnemers.
+ Lange Winkelstraat 5, 2000 Antwerpen
@@ -72,6 +72,14 @@ function ContactPage() {
>
Vlaanderen — Cultuur, Jeugd & Media
+
+ Ichtus Antwerpen
+
diff --git a/packages/api/src/constants.ts b/packages/api/src/constants.ts
index 92e0642..7b3fdc2 100644
--- a/packages/api/src/constants.ts
+++ b/packages/api/src/constants.ts
@@ -2,7 +2,8 @@
// Single source-of-truth for event details used across the API
// ---------------------------------------------------------------------------
-export const EVENT = "Open Mic Night — vrijdag 18 april 2026";
+export const EVENT = "Open Mic Night — vrijdag 24 april 2026";
+export const LOCATION = "Lange Winkelstraat 5, 2000 Antwerpen";
export const OPENS = "maandag 16 maart 2026 om 19:00";
// Registration opens — used for reminder scheduling windows
diff --git a/packages/api/src/email.ts b/packages/api/src/email.ts
index a9fac58..91ab6b8 100644
--- a/packages/api/src/email.ts
+++ b/packages/api/src/email.ts
@@ -1,6 +1,6 @@
import { env } from "@kk/env/server";
import nodemailer from "nodemailer";
-import { EVENT, OPENS } from "./constants";
+import { EVENT, LOCATION, OPENS } from "./constants";
// ---------------------------------------------------------------------------
// Transport — singleton so a warm CF isolate reuses the open TCP connection
@@ -209,6 +209,7 @@ export async function sendConfirmationEmail(params: {
p(
`We hebben je inschrijving voor ${EVENT} in goede orde ontvangen.`,
) +
+ card("Locatie", LOCATION) +
card("Jouw rol", roleLabel(params.wantsToPerform, params.artForm)) +
paymentCard(drinkCardCents, giftCents) +
p(
@@ -249,6 +250,7 @@ export async function sendUpdateEmail(params: {
p(
`Je inschrijving voor ${EVENT} is succesvol bijgewerkt.`,
) +
+ card("Locatie", LOCATION) +
card("Jouw rol", roleLabel(params.wantsToPerform, params.artForm)) +
paymentCard(drinkCardCents, giftCents) +
btn(manage, "Bekijk mijn inschrijving"),
@@ -377,6 +379,7 @@ export async function sendPaymentReminderEmail(params: {
p(
`Je hebt je ingeschreven voor ${EVENT}, maar we hebben nog geen betaling ontvangen.`,
) +
+ card("Locatie", LOCATION) +
p(`${amountNote} Log in op je account om te betalen.`) +
btn(`${env.BETTER_AUTH_URL}/account`, "Betaal nu") +
note(
@@ -407,6 +410,7 @@ export async function sendPaymentConfirmationEmail(params: {
p(
`We hebben je betaling voor ${EVENT} in goede orde ontvangen. Tot dan!`,
) +
+ card("Locatie", LOCATION) +
paymentCard(drinkCardCents, giftCents) +
btn(manage, "Beheer mijn inschrijving", "secondary"),
),