使用 Next.js 16 App Router 构建,采用静态优先的页面交付方式
portfolio-nextjs-notion — Next.js 作品集模板
作者 lufigir
基于 Next.js 16 App Router 与 Notion API 的静态优先作品集模板,使用 ISR 从 Notion 数据库获取内容,配合 Tailwind CSS 与 shadcn/ui 构建界面。
看看你的网站会是什么样
浏览真实页面截图,比较内容排版与手机效果。点击下方缩略图切换,放大查看整页细节。
全部页面与视图 2
截图用于了解视觉与布局,交互效果请以实际项目为准。
值得关注的模板亮点
从已有项目资料中,快速了解它的特点。
以 Notion 作为无头 CMS,通过 Notion API v5.6.0 获取内容
使用增量静态再生(ISR),并提供 app/api/revalidate 重新验证接口
使用 TypeScript,搭配 Tailwind CSS 与 shadcn/ui 组件
支持浅色与深色模式
README 提供从 Notion 数据库结构到 Vercel 部署的完整教程链接
模板详细介绍
这是一个作品集网站模板,内容通过 Notion 作为无头 CMS 管理,采用静态优先(static-first)方式交付,并使用增量静态再生(ISR)更新页面。README 说明其技术栈包括 Next.js 16 App Router、Notion API v5.6.0、TypeScript、Tailwind CSS 与 shadcn/ui,部署目标为 Vercel。项目结构包含 app 目录下的首页与 ISR 重新验证接口(api/revalidate)、components 下的 items/sections/ui 组件,以及 lib 下的数据获取逻辑、Notion 客户端与类型定义和工具函数。README 还提到模板支持浅色/深色模式,并提供从项目搭建、Notion 数据库结构、数据获取、ISR 与按需重新验证到 Vercel 部署的完整教程链接。
README 未提供具体的环境变量名称、Notion 数据库字段结构、本地运行命令或部署配置细节,这些内容需要参考其链接的教程。README 中的“production-ready”等表述属于项目自述,本介绍不据此推断实际生产就绪程度。
适合你的项目吗?
适用场景
- 希望用 Notion 数据库维护作品集内容、避免直接编辑代码的开发者
- 需要静态优先页面并希望通过 ISR 更新内容的个人作品集站点
- 想参考 Next.js App Router 与 Notion API 集成的项目结构示例
- 计划将作品集部署到 Vercel 并需要按需重新验证机制的场景
适合人群
- 使用 Notion 管理作品集内容的个人开发者
- 熟悉或愿意学习 Next.js App Router 与 TypeScript 的开发者
- 需要浅色/深色模式作品集模板的前端项目
- 希望按 README 教程逐步搭建并部署到 Vercel 的用户
上手与定制指南
结合仓库当前版本的说明,按下面的资料检查内容、配置与运行要求。
- 1
README 未列出所需环境变量名称,需参考其链接的完整教程(felipego.com 博客文章)
- 2
README 未提供本地安装与运行命令,需查阅教程或仓库中的配置文件
- 3
Notion 数据库结构、字段与集成方式在 README 中未展开,教程中有对应说明
- 4
部署目标为 Vercel,README 提供了 Vercel 一键克隆部署链接
- 5
README 未说明 Node.js 版本或其他运行环境要求
授权与来源资料
使用条件与限制
免费使用 · 保留许可声明本次收录的是公开仓库中采用 MIT 许可的免费版本;免费范围为该版本代码,不代表外部服务或第三方素材免费。
使用时需要遵守
- 允许免费使用、修改、商用和分发该版本代码。
- 分发代码副本或实质性部分时,保留原作者版权声明和完整 MIT 许可声明。
- 代码按现状提供;担保与责任限制以原许可证及适用法律为准。
额外费用与待核对事项
- 演示图片、字体、图标及其他第三方素材需按各自许可核对,不能仅凭代码的 MIT 许可判断。
- 域名、托管、数据库、支付或 AI 等外部服务可能另外收费。
查看原文依据
https://github.com/lufigir/portfolio-nextjs-notion/blob/main/LICENSEhttps://github.com/lufigir/portfolio-nextjs-notion/blob/main/README.mdPermission is hereby granted, free of charge
许可证原文
DeepSeek 根据仓库许可证和 README 整理 ·2026-10-14。结果仅覆盖已读取资料,依赖、图片、字体及后续条款变更以各自原文为准。
项目核对记录与介绍依据
模板资料
- 来源平台
- GitHub
- 资料与维护参考分
- 资料较完整 · 88 / 100
- 技术栈
- Next.js · React
- 网站类型
- 作品集
这个分数如何计算
本站按许可资料(最高30分)、演示链接(12分)、预览图(10分)、Star数(15分)、记录的维护时间(15分)、描述完整度(8分)、功能记录(5分)和分类资料(5分)计算。它不是代码、安全或性能测试,也不是 Google 评分;有链接不代表已实测可用。
这个项目需要核对什么
- 记录的仓库更新时间
- 2026-01-02
- 截图检查日期
- 2026-10-14
已收录演示链接。请用你的内容与屏幕尺寸检查;有演示不代表表单、认证或支付已经可用。
目录记录的主要技术栈是 Next.js。请通过依赖清单和锁文件核对实际版本与托管要求。这些说明基于收录资料,不代表代码审计或部署实测。
查看具体选型方法 →介绍的制作与核对状态
介绍由 AI 辅助整理目录与仓库资料。仓库作者不等于这篇介绍的审核者。
审核声明: codex-user-requested-batch-review-20261017 · 2026-10-16
查看当时使用的来源资料
SHA-256: f3fa3762b7d3399bcc180952661f2556863bf80c00418b166c7bddfc436e7cb6
2026-10-14T14:44:42.234Z
来源文件 / 仓库<div align="center">
<img src="https://res.cloudinary.com/dntqogcgc/image/upload/v1767316792/677shots_so_mhyjwf.png" alt="Portfolio banner" />
<h1>Next.js 16 ISR Portfolio with Notion CMS</h1>
<p>
A modern, minimal portfolio built with <strong>Next.js 16 (App Router)</strong> and
<strong>Notion as a headless CMS</strong>, using
<strong>Incremental Static Regeneration (ISR)</strong> for high performance and easy content updates.
</p>
<p>
Content is managed directly from Notion and delivered with a static-first approach.<br />
Built with <a href="https://nextjs.org/">Next.js</a>,
powered by <a href="https://developers.notion.com/">Notion API v5.6.0</a>,
styled using <a href="https://tailwindcss.com/">Tailwind CSS</a> and
<a href="https://ui.shadcn.com/">shadcn/ui</a>.
</p>
<p>
<a href="https://felipego.com/blog/nextjs-notion-portfolio-isr">Complete Tutorial</a> ·
<a href="https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Fastrxnomo%2Fportfolio-nextjs-notion">Deploy with Vercel</a>
</p>
</div>
---
## Complete Guide
This project includes a **full, in-depth tutorial** covering everything from zero to production:
- Project setup
- Notion database structure
- Data fetching with the Notion API
- ISR and on-demand revalidation
- Deployment on Vercel
Read the full tutorial here:
**https://felipego.com/blog/nextjs-notion-portfolio-isr**
## Tech Stack
- Next.js 16 (App Router)
- Notion API v5.6.0
- TypeScript
- Tailwind CSS + shadcn/ui
- Incremental Static Regeneration (ISR)
- Vercel
## Features
- Content managed entirely from Notion
- Fast, static-first performance with ISR
- Light / Dark mode
- Fully typed and production-ready
## Project Structure
```txt
portfolio/
├── app/
│ ├── api/revalidate/ # ISR revalidation endpoint
│ ├── globals.css # Global styles and theme variables
│ ├── layout.tsx # Root layout and providers
│ └── page.tsx # Home page (ISR)
├── components/
│ ├── items/ # Individual UI items
│ ├── sections/ # Page sections
│ └── ui/ # Shared UI components
└── lib/
├── data/ # Data fetching logic
├── notion/ # Notion client and types
└── utils.ts # Utility functions
```
## License
MIT — free to use for personal or commercial portfolios.
看看同类模板
对比同技术栈与用途的模板,找到更适合的视觉与内容结构。

react-resume-template
A personal resume website template built with React.js, Typescript, Next.js, and styled with Tailwind css
Next.js · 作品集

nxt-lnk
Custom bio links for creatives who love coding. A perfect custom alternative for linktree, bio and other short…
Next.js · 作品集

sylph
A minimal portfolio template.
Next.js · 作品集

sleek-portfolio
sleek-portfolio 是一个面向开发者个人品牌展示的现代作品集模板,基于 Next.js 15、TypeScript、Tailwind CSS 和 Shadcn UI 构建。
Next.js · 作品集

research-website-template
React + Next.js template for research websites (for PhD students, researchers, etc)
Next.js · 作品集

shadcn-portfolio
shadcn-portfolio 是一个面向开发者的作品集模板,技术栈为 Next.js 15、shadcn/ui、Tailwind CSS 和 Framer Motion。
Next.js · 作品集
