Skip to content

Commit b10e49f

Browse files
Add Support Us On Patreon Button on /sponsorship (#5)
1 parent 5db4074 commit b10e49f

5 files changed

Lines changed: 21 additions & 3 deletions

File tree

public/i18n/en.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@
6969
"ourPatreons": "Our Patreons",
7070
"votes": "# dof votes",
7171
"heroEyebrow": "Sponsor WDT",
72+
"patreonCta": "Support us on Patreon",
7273
"closingNote": "Your support helps us keep building better events for the community."
7374
},
7475
"aboutUs": {

public/i18n/es.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@
7777
"ourPatreons": "Nuestros Patreons",
7878
"votes": "# de votos",
7979
"heroEyebrow": "Patrocina WDT",
80+
"patreonCta": "Apóyanos en Patreon",
8081
"closingNote": "Tu apoyo nos ayuda a seguir creando mejores eventos para la comunidad."
8182
},
8283
"aboutUs": {

src/Icons.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ const links = [
4040
{ href: 'https://www.instagram.com/webdevtalksmx', label: 'Instagram', icon: InstagramIcon },
4141
{ href: 'https://twitter.com/webdevtalksmx', label: 'X', icon: XIcon },
4242
{ href: 'https://www.linkedin.com/company/web-dev-talks', label: 'LinkedIn', icon: LinkedInIcon },
43-
{ href: 'https://patreon.com/WebDevTalksColima', label: 'Patreon', icon: PatreonIcon },
43+
{ href: 'https://www.patreon.com/cw/WebDevTalksColima', label: 'Patreon', icon: PatreonIcon },
4444
{ href: 'mailto:webdevtalkscolima@gmail.com', label: 'Email', icon: Mail },
4545
]
4646

src/Sponsorship.tsx

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,11 @@ import { type ReactElement } from 'react'
22
import { useTranslation } from 'react-i18next'
33
import { Pie } from 'react-chartjs-2'
44
import { Chart as ChartJS, ArcElement, Tooltip as ChartTooltip, Legend, type ChartOptions } from 'chart.js'
5-
import { Clock3, Megaphone, Presentation, Share2 } from 'lucide-react'
5+
import { Clock3, ExternalLink, Megaphone, Presentation, Share2 } from 'lucide-react'
66
import SiteShell from './components/SiteShell'
7+
import { buttonVariants } from './components/ui/button'
78
import { Card, CardContent, CardHeader, CardTitle } from './components/ui/card'
9+
import { cn } from './lib/utils'
810
import { Tooltip } from './components/ui/tooltip'
911
import logo from './assets/images/logo.png'
1012
import rubyCentral from './assets/images/sponsors/ruby_central.png'
@@ -149,6 +151,20 @@ const Sponsorship = (): ReactElement => {
149151
<span className="inline-flex items-center gap-2 rounded-full border border-yellow-300/40 bg-yellow-300/10 px-3 py-1.5 text-[0.82rem] font-bold uppercase tracking-[0.08em] text-sky-600">{t('sponsorship.heroEyebrow')}</span>
150152
<h1 className="text-4xl font-bold leading-none tracking-tight text-brand md:text-5xl lg:text-6xl">{t('navbar.sponsorship')}</h1>
151153
<p className="text-lg leading-8 text-slate-600">{t('sponsorship.description1')}</p>
154+
<div className="flex justify-start">
155+
<a
156+
href="https://www.patreon.com/cw/WebDevTalksColima"
157+
target="_blank"
158+
rel="noopener noreferrer"
159+
className={cn(
160+
buttonVariants({ variant: 'default', size: 'lg' }),
161+
'h-14 max-w-full rounded-full px-8 text-lg',
162+
)}
163+
>
164+
{t('sponsorship.patreonCta')}
165+
<ExternalLink className="h-5 w-5" aria-hidden />
166+
</a>
167+
</div>
152168
<p className="text-slate-600">{t('sponsorship.description2')}</p>
153169
<p className="text-slate-600">{t('sponsorship.description3')}</p>
154170
</div>

src/components/ui/button.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,4 +43,4 @@ const Button = React.forwardRef<HTMLButtonElement, ButtonProps>(
4343

4444
Button.displayName = 'Button'
4545

46-
export { Button }
46+
export { Button, buttonVariants }

0 commit comments

Comments
 (0)