Description
Launch a product waitlist fast using Next.js 15, Notion CMS, Upstash Redis, and Resend for email.
npx boilerapp waitlyDocumentación
Deploy to Vercel
Core Features
- Next.js 15: Built with the latest features of the leading React framework for performance and developer experience.
- Notion as CMS: Seamlessly manage your waitlist entries directly within a Notion database.
- Upstash Redis: Implement robust rate limiting for signups using serverless Redis.
- Resend Integration: Send transactional emails (e.g., confirmation emails) through Resend using your custom domain.
- One-Click Vercel Deploy: Get your waitlist live in minutes.
- Tailwind CSS & React: Modern, responsive UI built with utility-first CSS and React components.
- TypeScript: Type safety for a more robust codebase.
Why Notion as a CMS?
Notion is a versatile tool renowned for its content management capabilities and user-friendly interface. This template demonstrates how to leverage Notion as a lightweight, free, and effective Content Management System (CMS) for your waitlist.
Key Advantages:
- Simplicity: Manage your waitlist data in a familiar Notion database.
- No Backend Needed: Fetches data directly via Notion's API, reducing complexity.
- Flexibility: Easily extendable to manage other types of content beyond a waitlist.
- Collaboration: Utilize Notion's collaborative features if working with a team.
Prerequisites: Setting Up External Services
Before you can run this project, you'll need to configure a few external services:
1. Upstash Redis
Upstash provides serverless Redis. This template uses it for rate limiting signups.
- Sign up for a free account at Upstash.
- Create a new Redis database.
- From the database details page, note down the
REST API -> Endpoint(this is yourUPSTASH_REDIS_REST_URL) andREST API -> Read-only Tokenor a custom token with write access (this is yourUPSTASH_REDIS_REST_TOKEN). Ensure the token has write permissions if you're using it for operations that modify data.
2. Resend
Resend is used for sending transactional emails (e.g., signup confirmations).
- Create an account at Resend.
- Add and verify your domain (e.g.,
yourdomain.com). - Generate an API key from the "API Keys" section. This will be your
RESEND_API_KEY. - Note the email address you'll send from (e.g.,
waitlist@yourdomain.com). This will be yourRESEND_FROM_EMAIL.
3. Notion
Your waitlist data will be stored in a Notion database.
- Ensure you have a Notion account and workspace.
- Create a new Database - Full page in your workspace. You can name it "Waitlist Users" or similar.
- Add the following properties (columns) to your database:
Name(Property type:Title) - This is usually the default first column.Email(Property type:Email)- (Optional)
Signed Up At(Property type:Created time) - For tracking when users signed up.
- Obtain your Notion Integration Secret:
- Go to Notion Integrations.
- Click "+ New integration".
- Give it a name (e.g., "Waitlist App Integration").
- Associate it with your workspace.
- Under "Capabilities\
Prix
Gratuit