feat: nieuwe workshop editie 3 april 2026

Datum bijgewerkt van 6 maart naar 3 april 2026 over alle componenten,
meta tags en content. Nieuw Tally formulier (XxGBrV) en availableSpots
reset naar 8.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Frank Meeuwsen 2026-03-09 17:14:48 +01:00
parent 9811425e61
commit e13e1e6528
12 changed files with 24 additions and 24 deletions

View file

@ -6,7 +6,7 @@ This file provides guidance to Claude Code (claude.ai/code) when working with co
Sales page for the "Claude Code Workshop" - a hands-on workshop for Dutch entrepreneurs (ZZP/MKB). Built as a static React SPA. All content is in Dutch (nl). Sales page for the "Claude Code Workshop" - a hands-on workshop for Dutch entrepreneurs (ZZP/MKB). Built as a static React SPA. All content is in Dutch (nl).
**Workshop details:** Friday March 6, 2026 | 9:00-14:00 | Utrecht | €399 excl. BTW | Max 8 participants **Workshop details:** Friday April 3, 2026 | 9:00-14:00 | Utrecht | €399 excl. BTW | Max 8 participants
## Commands ## Commands

View file

@ -226,12 +226,12 @@ Testimonial 5: Focus op ROI of tijdsbesparing
### Closing Text ### Closing Text
De volgende workshop is op **vrijdag 6 maart 2026** in Utrecht. We starten om 9:00, rond 14:00 ga je naar huis met je eigen werkende project. De volgende workshop is op **vrijdag 3 april 2026** in Utrecht. We starten om 9:00, rond 14:00 ga je naar huis met je eigen werkende project.
Acht plaatsen. Persoonlijke begeleiding en handen uit de mouwen om mooi werk te maken met elkaar. Acht plaatsen. Persoonlijke begeleiding en handen uit de mouwen om mooi werk te maken met elkaar.
### CTA ### CTA
**Schrijf je NU in voor 6 maart** **Schrijf je NU in voor 3 april**
### Laatste noot ### Laatste noot
Vragen? Mail naar [Frank](mailto:frank@frankmeeuwsen.com). Ik help je graag. Vragen? Mail naar [Frank](mailto:frank@frankmeeuwsen.com). Ik help je graag.
@ -242,12 +242,12 @@ Vragen? Mail naar [Frank](mailto:frank@frankmeeuwsen.com). Ik help je graag.
### Trust Indicators (voor header/footer) ### Trust Indicators (voor header/footer)
- Locatie: Wonders of Work, Utrecht - Locatie: Wonders of Work, Utrecht
- Datum: Vrijdag 6 maart 2026 - Datum: Vrijdag 3 april 2026
- Tijd: 9:00 - 14:00 - Tijd: 9:00 - 14:00
- Max 8 deelnemers - Max 8 deelnemers
### Meta Description (SEO) ### Meta Description (SEO)
Claude Code Workshop voor MKB ondernemers. Van nieuwsgierig naar praktisch aan de slag in 1 ochtend. Max 8 deelnemers, persoonlijke begeleiding. 6 maart 2026, Utrecht. Claude Code Workshop voor MKB ondernemers. Van nieuwsgierig naar praktisch aan de slag in 1 ochtend. Max 8 deelnemers, persoonlijke begeleiding. 3 april 2026, Utrecht.
### Page Title (SEO) ### Page Title (SEO)
Claude Code Workshop | Van 0 naar werkend project in 1 ochtend | 6 maart 2026 Claude Code Workshop | Van 0 naar werkend project in 1 ochtend | 3 april 2026

View file

@ -5,7 +5,7 @@
<link rel="icon" type="image/svg+xml" href="/favicon.svg" /> <link rel="icon" type="image/svg+xml" href="/favicon.svg" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Claude Code Workshop - Van nieuwsgierig naar praktisch aan de slag</title> <title>Claude Code Workshop - Van nieuwsgierig naar praktisch aan de slag</title>
<meta name="description" content="Leer Claude Code in 1 ochtend. Van installatie tot werkende applicaties. Kleine groep, hands-on, 6 maart 2026 in Utrecht." /> <meta name="description" content="Leer Claude Code in 1 ochtend. Van installatie tot werkende applicaties. Kleine groep, hands-on, 3 april 2026 in Utrecht." />
<!-- Canonical --> <!-- Canonical -->
<link rel="canonical" href="https://frankmeeuwsen.com/workshopclaudecode/" /> <link rel="canonical" href="https://frankmeeuwsen.com/workshopclaudecode/" />
@ -14,7 +14,7 @@
<meta property="og:type" content="website" /> <meta property="og:type" content="website" />
<meta property="og:locale" content="nl_NL" /> <meta property="og:locale" content="nl_NL" />
<meta property="og:title" content="Claude Code Workshop - Maak zelf de tools waar je nu nog voor betaalt" /> <meta property="og:title" content="Claude Code Workshop - Maak zelf de tools waar je nu nog voor betaalt" />
<meta property="og:description" content="In 1 ochtend van nieuwsgierig naar praktisch aan de slag met Claude Code. Kleine groep, hands-on. 6 maart 2026 in Utrecht." /> <meta property="og:description" content="In 1 ochtend van nieuwsgierig naar praktisch aan de slag met Claude Code. Kleine groep, hands-on. 3 april 2026 in Utrecht." />
<meta property="og:url" content="https://frankmeeuwsen.com/workshopclaudecode/" /> <meta property="og:url" content="https://frankmeeuwsen.com/workshopclaudecode/" />
<meta property="og:image" content="https://frankmeeuwsen.com/workshopclaudecode/og-image.png" /> <meta property="og:image" content="https://frankmeeuwsen.com/workshopclaudecode/og-image.png" />
<meta property="og:image:width" content="1200" /> <meta property="og:image:width" content="1200" />
@ -24,7 +24,7 @@
<!-- Twitter Card --> <!-- Twitter Card -->
<meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:card" content="summary_large_image" />
<meta name="twitter:title" content="Claude Code Workshop - Maak zelf de tools waar je nu nog voor betaalt" /> <meta name="twitter:title" content="Claude Code Workshop - Maak zelf de tools waar je nu nog voor betaalt" />
<meta name="twitter:description" content="In 1 ochtend van nieuwsgierig naar praktisch aan de slag met Claude Code. Kleine groep, hands-on. 6 maart 2026 in Utrecht." /> <meta name="twitter:description" content="In 1 ochtend van nieuwsgierig naar praktisch aan de slag met Claude Code. Kleine groep, hands-on. 3 april 2026 in Utrecht." />
<meta name="twitter:image" content="https://frankmeeuwsen.com/workshopclaudecode/og-image.png" /> <meta name="twitter:image" content="https://frankmeeuwsen.com/workshopclaudecode/og-image.png" />
<!-- Umami Analytics --> <!-- Umami Analytics -->

View file

@ -28,13 +28,13 @@ function FinalCTA() {
<div className="max-w-3xl mx-auto text-center"> <div className="max-w-3xl mx-auto text-center">
{/* Headline */} {/* Headline */}
<h2 className="font-display text-3xl md:text-4xl font-bold text-white mb-6"> <h2 className="font-display text-3xl md:text-4xl font-bold text-white mb-6">
Op 6 maart werk je anders Op 3 april werk je anders
</h2> </h2>
{/* Closing text */} {/* Closing text */}
<p className="text-xl text-coral-100 mb-8 leading-relaxed"> <p className="text-xl text-coral-100 mb-8 leading-relaxed">
De volgende workshop is op{' '} De volgende workshop is op{' '}
<span className="text-white font-semibold">vrijdag 6 maart 2026</span> <span className="text-white font-semibold">vrijdag 3 april 2026</span>
{' '}in Utrecht. We starten om 9:00, rond 14:00 ga je naar huis met {' '}in Utrecht. We starten om 9:00, rond 14:00 ga je naar huis met
je eigen werkende project. je eigen werkende project.
</p> </p>
@ -72,7 +72,7 @@ function FinalCTA() {
to={isSoldOut ? PAYMENT_CONFIG.WAITLIST_URL : PAYMENT_CONFIG.SIGNUP_URL} to={isSoldOut ? PAYMENT_CONFIG.WAITLIST_URL : PAYMENT_CONFIG.SIGNUP_URL}
className="inline-flex items-center gap-2 px-8 py-4 bg-white text-coral-600 font-semibold text-lg rounded-xl shadow-lg hover:bg-coral-50 hover:shadow-xl active:bg-coral-100 transition-all duration-200" className="inline-flex items-center gap-2 px-8 py-4 bg-white text-coral-600 font-semibold text-lg rounded-xl shadow-lg hover:bg-coral-50 hover:shadow-xl active:bg-coral-100 transition-all duration-200"
> >
{isSoldOut ? 'Zet me op de wachtlijst' : 'Doe mee op 6 maart'} {isSoldOut ? 'Zet me op de wachtlijst' : 'Doe mee op 3 april'}
<svg className="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24"> <svg className="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M17 8l4 4m0 0l-4 4m4-4H3" /> <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M17 8l4 4m0 0l-4 4m4-4H3" />
</svg> </svg>

View file

@ -36,7 +36,7 @@ function Footer() {
<svg className="w-4 h-4 text-coral-400" fill="none" stroke="currentColor" viewBox="0 0 24 24"> <svg className="w-4 h-4 text-coral-400" fill="none" stroke="currentColor" viewBox="0 0 24 24">
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z" /> <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z" />
</svg> </svg>
Vrijdag 6 maart 2026 Vrijdag 3 april 2026
</li> </li>
<li className="flex items-center gap-2"> <li className="flex items-center gap-2">
<svg className="w-4 h-4 text-coral-400" fill="none" stroke="currentColor" viewBox="0 0 24 24"> <svg className="w-4 h-4 text-coral-400" fill="none" stroke="currentColor" viewBox="0 0 24 24">

View file

@ -83,7 +83,7 @@ function Hero() {
</div> </div>
<div> <div>
<p className="text-xs text-warm-500 font-medium uppercase tracking-wide">Datum</p> <p className="text-xs text-warm-500 font-medium uppercase tracking-wide">Datum</p>
<p className="text-base font-semibold text-warm-800 whitespace-nowrap">Vrijdag 6 maart</p> <p className="text-base font-semibold text-warm-800 whitespace-nowrap">Vrijdag 3 april</p>
</div> </div>
</div> </div>
<div className="flex items-center gap-3"> <div className="flex items-center gap-3">

View file

@ -123,7 +123,7 @@ function Pricing() {
to={isSoldOut ? PAYMENT_CONFIG.WAITLIST_URL : PAYMENT_CONFIG.SIGNUP_URL} to={isSoldOut ? PAYMENT_CONFIG.WAITLIST_URL : PAYMENT_CONFIG.SIGNUP_URL}
className="btn-primary w-full text-center block" className="btn-primary w-full text-center block"
> >
{isSoldOut ? 'Zet me op de wachtlijst' : 'Doe mee op 6 maart'} {isSoldOut ? 'Zet me op de wachtlijst' : 'Doe mee op 3 april'}
</Link> </Link>
{/* Annuleringsbeleid als vertrouwenssignaal */} {/* Annuleringsbeleid als vertrouwenssignaal */}

View file

@ -51,7 +51,7 @@ function StickyBar() {
<svg className="w-4 h-4 text-coral-500" fill="none" stroke="currentColor" viewBox="0 0 24 24"> <svg className="w-4 h-4 text-coral-500" fill="none" stroke="currentColor" viewBox="0 0 24 24">
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z" /> <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z" />
</svg> </svg>
6 maart 2026 3 april 2026
</span> </span>
<span className="flex items-center gap-1"> <span className="flex items-center gap-1">
<svg className="w-4 h-4 text-coral-500" fill="none" stroke="currentColor" viewBox="0 0 24 24"> <svg className="w-4 h-4 text-coral-500" fill="none" stroke="currentColor" viewBox="0 0 24 24">
@ -95,7 +95,7 @@ function StickyBar() {
399 <span className="text-xs font-normal text-warm-500">excl. BTW</span> 399 <span className="text-xs font-normal text-warm-500">excl. BTW</span>
</div> </div>
<div className="text-xs text-warm-500"> <div className="text-xs text-warm-500">
6 maart 2026 | Utrecht 3 april 2026 | Utrecht
</div> </div>
<div className="text-xs text-coral-600 font-medium"> <div className="text-xs text-coral-600 font-medium">
{isSoldOut ? 'Volgeboekt' : `Nog ${availableSpots} ${availableSpots === 1 ? 'plek' : 'plekken'} beschikbaar`} {isSoldOut ? 'Volgeboekt' : `Nog ${availableSpots} ${availableSpots === 1 ? 'plek' : 'plekken'} beschikbaar`}

View file

@ -8,6 +8,6 @@
export const WORKSHOP_CONFIG = { export const WORKSHOP_CONFIG = {
totalSpots: 8, totalSpots: 8,
availableSpots: 0, availableSpots: 8,
isSoldOut: true, isSoldOut: false,
}; };

View file

@ -60,7 +60,7 @@ function Signup() {
{/* Embedded Tally formulier */} {/* Embedded Tally formulier */}
<div className="card"> <div className="card">
<iframe <iframe
data-tally-src="https://tally.so/embed/0Q6v8A?alignLeft=1&hideTitle=1&transparentBackground=1&dynamicHeight=1" data-tally-src="https://tally.so/embed/XxGBrV?alignLeft=1&hideTitle=1&transparentBackground=1&dynamicHeight=1"
loading="lazy" loading="lazy"
width="100%" width="100%"
height="300" height="300"
@ -71,7 +71,7 @@ function Signup() {
{/* Workshop samenvatting */} {/* Workshop samenvatting */}
<div className="mt-8 text-center text-sm text-warm-500 space-y-1"> <div className="mt-8 text-center text-sm text-warm-500 space-y-1">
<p>Claude Code Workshop | Vrijdag 6 maart 2026 | 9:00 - 14:00 | Utrecht</p> <p>Claude Code Workshop | Vrijdag 3 april 2026 | 9:00 - 14:00 | Utrecht</p>
<p>EUR 399 excl. BTW (EUR 482,79 incl. BTW)</p> <p>EUR 399 excl. BTW (EUR 482,79 incl. BTW)</p>
</div> </div>
</div> </div>

View file

@ -48,7 +48,7 @@ function ThankYou() {
<svg className="w-5 h-5 text-coral-500 flex-shrink-0 mt-0.5" fill="none" stroke="currentColor" viewBox="0 0 24 24"> <svg className="w-5 h-5 text-coral-500 flex-shrink-0 mt-0.5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z" /> <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z" />
</svg> </svg>
<span>Vrijdag 6 maart 2026</span> <span>Vrijdag 3 april 2026</span>
</div> </div>
<div className="flex gap-3"> <div className="flex gap-3">
<svg className="w-5 h-5 text-coral-500 flex-shrink-0 mt-0.5" fill="none" stroke="currentColor" viewBox="0 0 24 24"> <svg className="w-5 h-5 text-coral-500 flex-shrink-0 mt-0.5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
@ -80,7 +80,7 @@ function ThankYou() {
</li> </li>
<li className="flex gap-3"> <li className="flex gap-3">
<span className="flex-shrink-0 w-7 h-7 bg-coral-100 text-coral-600 rounded-full flex items-center justify-center font-semibold text-sm">3</span> <span className="flex-shrink-0 w-7 h-7 bg-coral-100 text-coral-600 rounded-full flex items-center justify-center font-semibold text-sm">3</span>
<span>Op 6 maart neem je je laptop mee en gaan we aan de slag!</span> <span>Op 3 april neem je je laptop mee en gaan we aan de slag!</span>
</li> </li>
</ol> </ol>
</div> </div>

View file

@ -61,7 +61,7 @@ function WaitlistSignup() {
<h1 className="heading-hero mb-4 text-center">Zet je op de wachtlijst</h1> <h1 className="heading-hero mb-4 text-center">Zet je op de wachtlijst</h1>
<p className="text-center text-warm-600 mb-4"> <p className="text-center text-warm-600 mb-4">
De workshop van 6 maart is volgeboekt. Zet je op de wachtlijst en we laten je weten als er een plek vrijkomt of als er een nieuwe editie gepland wordt. De workshop van 3 april is volgeboekt. Zet je op de wachtlijst en we laten je weten als er een plek vrijkomt of als er een nieuwe editie gepland wordt.
</p> </p>
<p className="text-center text-warm-500 text-sm mb-10"> <p className="text-center text-warm-500 text-sm mb-10">
Geen verplichtingen, geen betaling. Alleen je naam en e-mailadres. Geen verplichtingen, geen betaling. Alleen je naam en e-mailadres.