Notion Sync
Sync your project documentation to Notion directly from VS Code — no copy-pasting, no manual updates.
One command syncs your README.md and docs/project-guide.md to a Notion page automatically. A daily reminder keeps your docs up to date.
Features
- One-command sync — Run
Sync to Notion from the Command Palette and all docs are uploaded instantly
- Daily reminder — Get a popup at your chosen time each day reminding you to sync
- Configurable reminder time — Set any time in 24-hour format (default: 10:30)
- First-run setup — Prompts for your Notion token and page ID on first use, saves them for future runs
- Progress notifications — See live sync progress and results in the VS Code Output panel
- Reset settings — Clear saved credentials anytime with the Reset Settings command
Setup (One Time)
Step 1 — Create a Notion Integration
- Go to notion.so/my-integrations
- Click New integration
- Give it a name (e.g. "VS Code Sync") and click Submit
- Copy the Internal Integration Token (starts with
ntn_...)
Step 2 — Connect the integration to your Notion page
- Open the Notion page where you want your docs to appear
- Click ... (top right) → Connect to → select your integration
- Copy the Page ID from the URL:
- URL looks like:
notion.so/My-Page-3646bb9fd7c68067bf08d885801a55dc
- The ID is the last part:
3646bb9fd7c68067bf08d885801a55dc
Step 3 — Run the extension
- Open your project folder in VS Code
- Press
Ctrl + Shift + P
- Type Sync to Notion and press Enter
- Paste your token and page ID when prompted — they are saved for next time
Usage
Sync docs to Notion
Ctrl + Shift + P → Sync to Notion
Uploads README.md and docs/project-guide.md from your open workspace to the configured Notion page.
Check sync results
Open the Output panel (Ctrl + Shift + U) and select Notion Sync from the dropdown. You will see which files were synced and how many blocks were created.
Reset credentials
Ctrl + Shift + P → Notion Sync: Reset Settings
Clears your saved token and page ID. The next sync will prompt you to enter them again.
Settings
| Setting |
Default |
Description |
notionSync.token |
(empty) |
Your Notion API token — set automatically on first run |
notionSync.pageId |
(empty) |
Your Notion parent page ID — set automatically on first run |
notionSync.reminderTime |
10:30 |
Daily reminder time in 24-hour format (e.g. 14:00 for 2 PM) |
To change the reminder time:
- Go to File → Preferences → Settings (or
Ctrl + ,)
- Search for Notion Sync
- Update Reminder Time to your preferred time
Which files get synced?
The extension syncs these two files from your open workspace:
| File |
Notion page title |
README.md |
README |
docs/project-guide.md |
Project Guide |
If either file is missing, it is skipped with a warning in the Output panel.
Requirements
- A Notion account (free plan works)
- A Notion integration token from notion.so/my-integrations
- A Notion page connected to the integration
- Your project open as a workspace folder in VS Code
Commands
| Command |
Description |
Sync to Notion |
Uploads README.md and docs/project-guide.md to Notion |
Notion Sync: Reset Settings |
Clears saved token and page ID |