Skip to content

ChrisHyperFunc/readzn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

https://readzn.com/

English | 简体中文

Readzn

📚 A static knowledge navigation website built with Notion and Next.js, focusing on organizing and discovering quality reading resources. Achieve zero-cost maintenance of the knowledge base system through automated synchronization of Notion database content.

Background

With the explosive growth of information, efficiently organizing and managing knowledge resources has become a pain point. Readzn combines Notion's flexible content management with Next.js's high-performance rendering to create an out-of-the-box knowledge navigation solution.

Technical Architecture

  • Frontend Framework: Next.js 12 (SSG Static Generation)
  • State Management: React Context + useReducer
  • Styling Solution: Tailwind CSS + PostCSS
  • Content Management: Notion Official API + react-notion-x
  • Deployment Platform: Vercel Edge Network

Highlights ✨

🚀  Fast and Responsive

  • Fast page rendering and responsive design
  • Efficient static generation compiler

🤖  Instant Deployment

  • Deploy on Vercel in minutes
  • Incremental regeneration with no need to redeploy after updating Notion content

🚙  Feature Complete

  • Comments system, full-width pages, quick search, and tag filtering
  • RSS feed, analytics, Web Vitals, and more features

🎨  Easy Customization

  • Rich configuration options, supporting both English & Chinese interfaces
  • Built with Tailwind CSS for easy style customization

🕸  SEO Friendly

  • Optimized URL structure
  • Complete SEO configuration

Quick Start

Prerequisites

node >=16.13.0
pnpm >=7.0.0

Configuration

  1. Copy the Notion template: Readzn Tempate
  2. Configure environment variables when deploying on Vercel:
# Required
NOTION_PAGE_ID="your_32char_page_id"  # Get from Notion page URL

# Optional
NOTION_ACCESS_TOKEN="secret_xxx"      # For private database access
GA_MEASUREMENT_ID="G-XXXXXXXXXX"      # Google Analytics ID

Local Development

# Install dependencies
pnpm install

# Start development server
pnpm dev

Docker Deployment

# Set environment variables
export NOTION_PAGE_ID=xxx
export IMAGE=readzn:latest

# Build Docker image
docker build -t ${IMAGE} --build-arg NOTION_PAGE_ID .

# Run container
docker run -d --name readzn -p 3000:3000 -e NOTION_PAGE_ID=${NOTION_PAGE_ID} ${IMAGE}

Contributing

Contributions are welcome in the following ways:

  1. Submit issues at Issues
  2. Follow Git Flow branching model
  3. Before submitting a Pull Request, please run:
pnpm lint    # ESLint check
pnpm format  # Prettier formatting

FAQ

License

MIT License © 2025 [Readzn]

Contact Us

📧 Feedback Email: hyperfunc@protonmail.com 🐞 Bug Report: https://github.com/ChrisHyperFunc/readzn/issues

Special Thanks

This project is built based on nobelium, special thanks to the original author for their outstanding work.

About

开源自readzn.com,基于Notion和Next.js构建的知识型网站,打造解决阅读烦恼的一站式平台。自动化同步Notion数据库内容,实现零成本知识库系统。特别适合博客、文档站点和个人知识库的搭建。点个>_Star吧。

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors