1
Fork and clone the repository
Fork the Birthday Wall repository on GitHub, then clone your fork locally.Replace
your-username with your GitHub username after forking from github.com/helloxiaozhen/birthday-web.2
Install dependencies
Birthday Wall uses Next.js 14 and Supabase. Install all dependencies with npm.
3
Set up Supabase
Create a Supabase project and configure the required database tables for the wish wall and page configuration.Follow the full instructions in the Supabase setup guide, which covers:
- Creating a new Supabase project
- Running the migration SQL to create all required tables
- Enabling Row Level Security policies
- Locating your project URL and API keys
4
Set environment variables
In the project root, create a
.env.local file and add the following variables. You’ll find the values in your Supabase project under Project Settings → API.5
Customize the birthday config
Open The fields you need to set:
lib/birthday-config.ts and update the person object with the celebrant’s details.6
Run locally
Start the development server and open the app in your browser.Visit
http://localhost:3000 to see the birthday countdown. Navigate to /radio, /write, /report, and /games to preview all five pages.7
Deploy to Vercel
When you’re ready to share Birthday Wall, deploy it to Vercel.Follow the full instructions in the Vercel deployment guide, which covers:
- Pushing your code to GitHub
- Importing the repository in Vercel
- Adding all environment variables in the Vercel dashboard
- Configuring a custom domain (optional)
NEXT_PUBLIC_SITE_URL to your production URL instead of http://localhost:3000.Next steps
Once Birthday Wall is live, explore the guides below to customize it further.Customize the birthday config
Change the celebrant’s name, date, greeting, and countdown text.
Add songs to the radio
Build a curated playlist with song titles, artists, lyrics, and artwork.
Wish wall
Learn how visitors submit wishes and how to manage them in the admin panel.
Environment variables reference
Full list of all required and optional environment variables.