From 0ed4e6f713053d769bcaba5c3fe0a9bfe2433b1e Mon Sep 17 00:00:00 2001
From: Prashant Sridharan <914007+CoolAssPuppy@users.noreply.github.com>
Date: Mon, 6 Jul 2026 21:58:04 +0200
Subject: [PATCH] Added landing page for Vercel Ship Sydney (#47662)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
## I have read the
[CONTRIBUTING.md](https://github.com/supabase/supabase/blob/master/CONTRIBUTING.md)
file.
YES
## What kind of change does this PR introduce?
Added a landing page for Vercel Ship Sydney
## Summary by CodeRabbit
* **New Features**
* Added a new contest landing page for Vercel Ship Sydney 2026 with
event details, entry steps, and a sign-up form.
* Added a thank-you page with confirmation messaging and quick links to
the dashboard and Supabase.
* Included the new contest pages in the site’s marketing page list,
making them live for the event.
---
.../contest-thank-you.tsx | 36 +++++
.../vercel-ship-sydney-2026/contest.tsx | 134 ++++++++++++++++++
apps/www/_go/index.tsx | 4 +
3 files changed, 174 insertions(+)
create mode 100644 apps/www/_go/events/vercel-ship-sydney-2026/contest-thank-you.tsx
create mode 100644 apps/www/_go/events/vercel-ship-sydney-2026/contest.tsx
diff --git a/apps/www/_go/events/vercel-ship-sydney-2026/contest-thank-you.tsx b/apps/www/_go/events/vercel-ship-sydney-2026/contest-thank-you.tsx
new file mode 100644
index 00000000000..cbf774f48a7
--- /dev/null
+++ b/apps/www/_go/events/vercel-ship-sydney-2026/contest-thank-you.tsx
@@ -0,0 +1,36 @@
+import type { GoPageInput } from 'marketing'
+import Link from 'next/link'
+import { Button } from 'ui'
+
+const page: GoPageInput = {
+ template: 'thank-you',
+ slug: 'vercel-ship-sydney-2026/contest/thank-you',
+ metadata: {
+ title: "You're entered | Supabase at Vercel Ship Sydney 2026",
+ description: 'Thanks for entering the Supabase contest at Vercel Ship Sydney 2026. Good luck!',
+ },
+ hero: {
+ title: 'Thanks for entering',
+ description:
+ "Your contest entry is confirmed. Make sure you've created a Supabase account and loaded data before the contest deadline. We'll reach out to the winner by email.",
+ },
+ sections: [
+ {
+ type: 'single-column',
+ title: 'Get started with Supabase',
+ description: "If you haven't already, create your account and start building.",
+ children: (
+
+
+
+
+ ),
+ },
+ ],
+}
+
+export default page
diff --git a/apps/www/_go/events/vercel-ship-sydney-2026/contest.tsx b/apps/www/_go/events/vercel-ship-sydney-2026/contest.tsx
new file mode 100644
index 00000000000..bb403eb2a5b
--- /dev/null
+++ b/apps/www/_go/events/vercel-ship-sydney-2026/contest.tsx
@@ -0,0 +1,134 @@
+import type { GoPageInput } from 'marketing'
+import Link from 'next/link'
+import { Button } from 'ui'
+
+const page: GoPageInput = {
+ template: 'lead-gen',
+ slug: 'vercel-ship-sydney-2026/contest',
+ metadata: {
+ title: 'Win a MacBook Neo | Supabase at Vercel Ship Sydney 2026',
+ description:
+ 'Vercel Eve gives your agent a brain. Supabase gives it a memory, an identity, and a rulebook. Thanks for meeting with us at Vercel Ship Sydney. Enter for a chance to win a MacBook Neo.',
+ },
+ hero: {
+ title: 'Win a MacBook Neo',
+ subtitle: 'Supabase at Vercel Ship Sydney 2026',
+ description:
+ 'Vercel Eve gives your agent a brain. Supabase gives it a memory, an identity, and a rulebook: pgvector for memory, Auth for identity, and Row Level Security for what it can touch. No new database, no new permission model. Thanks for meeting with us at Vercel Ship Sydney. Sign up, load some data, and enter below for a chance to win a MacBook Neo.',
+ image: {
+ src: '/images/landing-pages/sxsw-2026/macbook-neo.png',
+ alt: 'MacBook Neo in four colors',
+ width: 500,
+ height: 333,
+ },
+ ctas: [
+ {
+ label: 'Get started',
+ href: '#how-to-enter',
+ variant: 'primary',
+ },
+ ],
+ },
+ sections: [
+ {
+ type: 'single-column',
+ id: 'how-to-enter',
+ title: 'How to enter',
+ children: (
+
+
+
Create a Supabase account and note the email address you used
+
Load data into a Supabase database
+
Fill out the entry form below
+
Complete these steps by the contest deadline
+
+
+
+ No purchase necessary. Void where prohibited.{' '}
+
+ Official rules
+
+ .
+
+
+ ),
+ },
+ {
+ type: 'form',
+ id: 'enter-contest',
+ title: 'Enter the contest',
+ description: 'Fill out the form below to complete your entry.',
+ fields: [
+ {
+ type: 'text',
+ name: 'first_name',
+ label: 'First Name',
+ placeholder: 'First Name',
+ required: true,
+ half: true,
+ },
+ {
+ type: 'text',
+ name: 'last_name',
+ label: 'Last Name',
+ placeholder: 'Last Name',
+ required: true,
+ half: true,
+ },
+ {
+ type: 'email',
+ name: 'email_address',
+ label: 'Email',
+ placeholder: 'Work email',
+ required: true,
+ },
+ {
+ type: 'text',
+ name: 'company_name',
+ label: 'Company',
+ placeholder: 'Company name',
+ required: true,
+ },
+ {
+ type: 'text',
+ name: 'job_title',
+ label: 'Job Title',
+ placeholder: 'VP of Engineering',
+ required: false,
+ },
+ ],
+ submitLabel: 'Enter contest',
+ successRedirect: '/go/vercel-ship-sydney-2026/contest/thank-you',
+ disclaimer:
+ 'By submitting this form, I confirm that I have read and understood the [Privacy Policy](https://supabase.com/privacy) and the [Official Rules](/go/contest-rules).',
+ crm: {
+ hubspot: {
+ formGuid: 'e52b38eb-dd00-46e7-bdcc-b8e2aac87b2d',
+ fieldMap: {
+ first_name: 'firstname',
+ last_name: 'lastname',
+ email_address: 'email',
+ company_name: 'company',
+ job_title: 'jobtitle',
+ },
+ consent:
+ 'By submitting this form, I confirm that I have read and understood the Privacy Policy.',
+ },
+ notion: {
+ database_id: 'ff9a5102510e4c87ad50c5d6197ddd29',
+ columnMap: {
+ first_name: 'First Name',
+ last_name: 'Last Name',
+ email_address: 'Email',
+ company_name: 'Company',
+ job_title: 'Job Title',
+ },
+ },
+ },
+ },
+ ],
+}
+
+export default page
diff --git a/apps/www/_go/index.tsx b/apps/www/_go/index.tsx
index 8f4b1d5672f..3da6cb21913 100644
--- a/apps/www/_go/index.tsx
+++ b/apps/www/_go/index.tsx
@@ -22,6 +22,8 @@ import stripeExecDinner from './events/stripe-sessions-2026/exec-dinner'
import stripeExecDinnerThankYou from './events/stripe-sessions-2026/exec-dinner-thank-you'
import stripeMeetingScheduler from './events/stripe-sessions-2026/meeting-scheduler'
import stripeParty from './events/stripe-sessions-2026/party'
+import vercelShipSydneyContest from './events/vercel-ship-sydney-2026/contest'
+import vercelShipSydneyContestThankYou from './events/vercel-ship-sydney-2026/contest-thank-you'
import awsActivateOffer from './lead-gen/aws-activate-offer'
import exampleLeadGen from './lead-gen/example-lead-gen'
import amoe from './legal/amoe'
@@ -59,6 +61,8 @@ const pages: GoPageInput[] = [
selectPartnerDay, // remove after Select 2026
selectPartnerDayThankYou, // remove after Select 2026
startupGrindContest, // remove after May 31, 2026
+ vercelShipSydneyContest, // remove after July 31, 2026
+ vercelShipSydneyContestThankYou, // remove after July 31, 2026
supabaseStripeProjects,
]