English | 日本語
astro-notion-blog enables you to create a blog using Notion and generates it statically, resulting in lightning-fast page views.
- 🚀 Blazing fast page views
- 📝 With the ability to write blog content in Notion
- 🛠️ Customize your site's appearance to your liking
- ✅ Take advantage of the official Notion APIs
![](https://private-user-images.githubusercontent.com/1063435/253799461-967bbc23-014c-427d-b6cd-02c41822fb45.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkxMjE0MDIsIm5iZiI6MTczOTEyMTEwMiwicGF0aCI6Ii8xMDYzNDM1LzI1Mzc5OTQ2MS05NjdiYmMyMy0wMTRjLTQyN2QtYjZjZC0wMmM0MTgyMmZiNDUucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI1MDIwOSUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNTAyMDlUMTcxMTQyWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9YTg3ZjRlNGI4ZDUwYmYyNWE0ZGVlMTFmMDEyOWMyMzgzMGVjYmY5MWZiZWU0YTJhYzU0OGNjMDUzOGE1OTIxZSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.u2HRzgLTKhyWotpb8N9gG49F-uqHzCWScEBnqBadZz8)
![](https://private-user-images.githubusercontent.com/1063435/253799542-bf1add06-1f1c-42ca-88c9-decb8c0dcf8f.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkxMjE0MDIsIm5iZiI6MTczOTEyMTEwMiwicGF0aCI6Ii8xMDYzNDM1LzI1Mzc5OTU0Mi1iZjFhZGQwNi0xZjFjLTQyY2EtODhjOS1kZWNiOGMwZGNmOGYucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI1MDIwOSUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNTAyMDlUMTcxMTQyWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9MTFjMjJmOTliNTA2ZjhjNDU4ZTNkYjEwN2E5OTkwYjY4YWI4ODA2NWEyMGJmODIxN2ZjNGMyNzc2NzRjMjlmNCZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.0bli0baBvo_OUMhCS5e9Q65OGIILB8pa5RHFec_vXvA)
https://astro-notion-blog.pages.dev
- If you enjoy using this repo, don't forget to give it a star! 😉
- This is very motivating!
- Simply duplicate the blog template into your Notion workspace.
- Once you've duplicated the page (database), customize it to your liking by changing the icon, title, and description.
- For future reference, identify the
DATABASE_ID
by noting the portion of the duplicated page (database) URL that appears as https://notion.so/your-account/?v=xxxx.
- Create an integration and note "Internal Integration Token" as
NOTION_API_SECRET
- To integrate your application with Notion, share a database with your integration.
- To make a copy of this repository in your own account, fork it by clicking on the 'Fork' button in the top-right corner of the repository page.
- Go to Cloudflare Pages and sign in
- Create new project with "Connect to Git" with your forked repository
<your-account>/astro-notion-blog
, then click "Begin setup" - In "Build settings" section,
- Select "Astro" as "Framework preset"
- Open "Environment Variables (advanced)" and set
NODE_VERSION
,NOTION_API_SECRET
andDATABASE_ID
NODE_VERSION
isv18.16.0
or higher- How to deploy a site with Git is helpful
![](https://private-user-images.githubusercontent.com/1063435/239668196-bc1ceef1-d67a-490b-b465-34af1b0f8010.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkxMjE0MDIsIm5iZiI6MTczOTEyMTEwMiwicGF0aCI6Ii8xMDYzNDM1LzIzOTY2ODE5Ni1iYzFjZWVmMS1kNjdhLTQ5MGItYjQ2NS0zNGFmMWIwZjgwMTAucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI1MDIwOSUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNTAyMDlUMTcxMTQyWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9ZTQ2M2I1ZWU4YjM1OTFkMWE2NjRhODdkZjBjZDVlNGQzODVhYjk3MDlmM2ZlYzRhYTgzNWUzN2ZmMWVlZjMxMiZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.lbk1pQwYwNIKynq9avhHg0H3gWMrWrOlVv_Z3ZpE75c)
- After clicking the 'Save and Deploy' button, your Notion Blog will be published once the deployment process is complete.
Please note that the astro-notion-blog requires manual deployment every time you publish a new post or make updates. You can deploy manually from the Cloudflare Pages dashboard or set up a scheduled deploy using CI tools such as GitHub Actions.
- Node.js v18.14.1 or higher
- To set your secrets as environment variables, run the following commands in your terminal:
export NOTION_API_SECRET=<YOUR_NOTION_API_SECRET>
export DATABASE_ID=<YOUR_DATABASE_ID>
- Install dependencies and start local server
npm install
npm run dev
- Open http://localhost:4321 in your browser
- Press
Ctrl+C
in the terminal to stop
See wiki.
To report an issue, please create a new Issue. You can use either English or Japanese to describe the issue. 😉
If you like astro-notion-blog, sponsor me so that I can keep on developing software. Thank you.
astro-notion-blog is based otoyo/notion-blog