English | ζ₯ζ¬θͺ
astro-notion-blog
astro-notion-blog enables you to create a blog using Notion and generates it statically, resulting in lightning-fast page views.
π Lightning-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
Screenshots
Demo
https://astro-notion-blog.pages.dev
Quick Start
Requirements
Steps
- 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
- 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.
How to customize
Additional requirements
- Node.js v18 or higher
Steps
- 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:3000 in your browser
- Press
Ctrl+C
in the terminal to stop
For more information
See wiki.
Bug reports & feature requests
To report an issue, please create a new Issue. You can use either English or Japanese to describe the issue.
π¦ Twitter community
In our community, you have the opportunity to both support and be supported by other members.
Contribution
We welcome pull requests from anyone who wants to contribute to our project. Your contributions are greatly appreciated!
astro-notion-blog is based otoyo/notion-blog