Quickstart
Deploy and configure your sync in under 5 minutes
This guide walks you through deploying your own While instance.
Prerequisites
Before starting, you'll need:
Vercel Account
Sign up at vercel.com (free tier is sufficient)
Google Cloud Project
Create a project at console.cloud.google.com and select External user type
Notion Integration
Create an integration at notion.so/my-integrations
Step 1: Create Google OAuth Credentials
- Go to APIs & Services > Library in Google Cloud Console
- Enable the Google Calendar API
If the API is already enabled, you'll see "Manage" instead of "Enable". No action needed.
- Go to APIs & Services > OAuth consent screen
- Configure as External with your email as test user
- Go to Credentials > Create Credentials > OAuth client ID
- Select Web application and configure:
Authorised JavaScript origins:
https://your-app.vercel.app
http://localhost:3000Authorised redirect URIs:
https://your-app.vercel.app/api/auth/callback/google
http://localhost:3000/api/auth/callback/googleYou'll update these URIs with your actual Vercel domain after deployment.
Token Expiration
OAuth tokens expire every 7 days in "Testing" mode. You'll need to re-authenticate weekly unless you publish your OAuth app. Publishing is recommended for a smoother experience.
Step 2: Create Notion Integration
- Go to My integrations in Notion
- Click New integration
- Fill out name, select workspace, keep type as Internal
- Click Save
- Click Configure integration settings in the popup
- Verify Read, Update, and Insert capabilities are enabled
- Copy the Internal Integration Secret
- Connect the integration to your calendar database
Step 3: Deploy to Vercel
Click the button below to deploy:
During deployment, you'll need to provide these environment variables:
| Variable | Description | Your Value |
|---|---|---|
| Random string for session encryption | ||
| From Google OAuth credentials | ||
| From Google OAuth credentials | ||
| Comma-separated emails, spaces trimmed (e.g., you@gmail.com, admin@company.com) |
Redis storage is automatically provisioned via the deploy button — no manual setup needed.
Generate secrets
openssl rand -base64 32Step 4: Complete Setup Wizard
- Open your deployed app URL
- Follow the setup wizard to:
- Sign in with Google (grants calendar access automatically)
- Select your calendar
- Enter your Notion integration token
- Select your database
- Configure field mappings
- Test the connection
Step 5: Update OAuth Redirect URI
After deployment, update your Google OAuth credentials with your actual Vercel domain:
https://your-app-name.vercel.app/api/auth/callback/googleYou're Done!
Your events will now sync bidirectionally between Notion and Google Calendar.