A lightweight proxy tool for customizing Notion pages, making your Notion blog more SEO-friendly and customizable. With Potion, you can:
- Access Notion pages through your own server, with support for custom domains
- Customize page title and description
- Support sitemap.xml
- One-click deployment to Vercel
- Clone the repository:
git clone https://github.com/therainisme/potion.git
cd potion
- Create and edit
.env
file:
PORT=8080
SITE_DOMAIN=https://your-blog.notion.site
SITE_SLUG=your-page-slug
PAGE_TITLE=Your custom title
SITEMAP_ID=Your blog database id
PAGE_DESCRIPTION=Your custom description
GOOGLE_SITE_VERIFICATION=Your Google Search Console verification code
- Run:
go run .
-
Fork this repository
-
Import your forked repository to Vercel
-
Add environment variables in Vercel project settings:
SITE_DOMAIN=https://your-blog.notion.site
SITE_SLUG=your-page-slug
PAGE_TITLE=Your custom title
SITEMAP_ID=Your blog database id
PAGE_DESCRIPTION=Your custom description
GOOGLE_SITE_VERIFICATION=Your Google Search Console verification code
- Deploy and enjoy!
Note: The PORT
environment variable will be ignored on Vercel, as Vercel automatically assigns a port.
services:
potion:
image: therainisme/potion
container_name: potion
environment:
- PORT=8080
- SITE_DOMAIN=https://your-blog.notion.site
- SITE_SLUG=your-page-slug
- PAGE_TITLE=Your custom title
- SITEMAP_ID=Your blog database id
- PAGE_DESCRIPTION=Your custom description
- GOOGLE_SITE_VERIFICATION=Your Google Search Console verification code
# Or use .env file
# volumes:
# - .env:/app/.env
ports:
- "8080:8080"
restart: always
# Pull the image
docker pull therainisme/potion
# Run with environment variables
docker run -d \
--name potion \
-p 8080:8080 \
-e SITE_DOMAIN=https://your-blog.notion.site \
-e SITE_SLUG=your-page-slug \
-e PAGE_TITLE="Your custom title" \
-e SITEMAP_ID="Your blog database id" \
-e PAGE_DESCRIPTION="Your custom description" \
-e GOOGLE_SITE_VERIFICATION="Your Google Search Console verification code" \
therainisme/potion
# Or run with .env file
docker run -d \
--name potion \
-p 8080:8080 \
-v $(pwd)/.env:/app/.env \
therainisme/potion
Visit my blog to see Potion in action: https://blog.therainisme.com
Variable | Description | Example |
---|---|---|
PORT | Server port | 8080 |
SITE_DOMAIN | Your Notion site domain | https://your-blog.notion.site |
SITE_SLUG | Page slug | your-page-slug |
PAGE_TITLE | Custom page title | My Blog |
SITEMAP_ID (optional) | Your blog database id | xxxxxxxxx |
PAGE_DESCRIPTION | Custom page description | Welcome to my blog |
GOOGLE_SITE_VERIFICATION (optional) | Your Google Search Console verification code | xxxxxxxxxxxxx |