docs: 补全 README.md 项目文档
This commit is contained in:
@@ -1 +1,105 @@
|
||||
# sui_blog
|
||||
|
||||
个人博客 — 水墨纸质杂志风格。
|
||||
|
||||
技术栈:Next.js 16 + React 19 + Tailwind CSS 4 + GSAP ScrollTrigger。
|
||||
|
||||
## 页面
|
||||
|
||||
| 路由 | 说明 |
|
||||
|---|---|
|
||||
| `/` | 首页 — Hero 逐字揭示 + 精选文章 + 最新文章 |
|
||||
| `/blog` | 文章列表 — 按时间倒序,分类/标签筛选 |
|
||||
| `/posts/[slug]` | 文章详情 — 宋式排版,上下篇导航 |
|
||||
| `/categories` | 分类浏览 — 卡片网格,悬停动效 |
|
||||
| `/tags` | 标签云 |
|
||||
| `/about` | 关于页 — 个人介绍 + 时间轴 + 技术栈 |
|
||||
|
||||
## 后台管理
|
||||
|
||||
| 路由 | 说明 |
|
||||
|---|---|
|
||||
| `/admin/login` | 登录(密码认证,cookie session) |
|
||||
| `/admin` | 仪表盘 — 统计概览 + 最近文章 |
|
||||
| `/admin/posts` | 文章管理 — 列表筛选、新建、编辑、删除 |
|
||||
| `/admin/categories` | 分类管理 — 增删改 |
|
||||
| `/admin/tags` | 标签管理 — 云式展示,hover 删除 |
|
||||
|
||||
数据存储在 `src/data/storage/*.json`,已加入 `.gitignore`。
|
||||
|
||||
## 快速开始
|
||||
|
||||
```bash
|
||||
pnpm install
|
||||
pnpm dev # http://localhost:3000
|
||||
pnpm build # 生产构建
|
||||
```
|
||||
|
||||
初始化种子数据(首次运行):
|
||||
|
||||
```bash
|
||||
npx tsx src/lib/seed.ts
|
||||
```
|
||||
|
||||
## 项目结构
|
||||
|
||||
```
|
||||
src/
|
||||
├── app/
|
||||
│ ├── page.tsx # 首页
|
||||
│ ├── layout.tsx # 根布局
|
||||
│ ├── globals.css # 全局样式 + Tailwind v4 设计令牌
|
||||
│ ├── about/ # 关于页
|
||||
│ ├── admin/ # 后台管理
|
||||
│ │ ├── layout.tsx # 侧栏 + 鉴权
|
||||
│ │ ├── login/ # 登录页
|
||||
│ │ ├── posts/ # 文章 CRUD
|
||||
│ │ ├── categories/ # 分类管理
|
||||
│ │ └── tags/ # 标签管理
|
||||
│ ├── api/ # Route Handlers
|
||||
│ │ ├── auth/ # 登录/登出/鉴权
|
||||
│ │ ├── posts/ # 文章 CRUD
|
||||
│ │ ├── categories/ # 分类 CRUD
|
||||
│ │ └── tags/ # 标签 CRUD
|
||||
│ ├── blog/ # 文章列表
|
||||
│ ├── categories/ # 分类浏览
|
||||
│ ├── posts/[slug]/ # 文章详情
|
||||
│ └── tags/ # 标签云
|
||||
├── components/
|
||||
│ ├── Header.tsx # 顶部导航
|
||||
│ ├── Footer.tsx # 页脚
|
||||
│ ├── HeroSection.tsx # 首页 Hero
|
||||
│ ├── BlogList.tsx # 文章列表组件
|
||||
│ ├── PostContent.tsx # 文章正文排版
|
||||
│ ├── PostSections.tsx # 精选/最近文章卡片
|
||||
│ └── GsapReveal.tsx # GSAP 滚动动画组件
|
||||
├── data/
|
||||
│ ├── posts.ts # Mock 数据
|
||||
│ └── storage/ # JSON 数据文件(gitignored)
|
||||
└── lib/
|
||||
├── store.ts # 数据存储层(posts/categories/tags CRUD)
|
||||
└── seed.ts # 种子数据脚本
|
||||
```
|
||||
|
||||
## 设计系统
|
||||
|
||||
详见 [UI.md](./UI.md)。
|
||||
|
||||
核心色彩:parchment(纸张底色)+ ink(墨色文字)+ terracotta(赭石强调)+ sage(成功/发布状态)。
|
||||
|
||||
字体三层:`font-display`(宋体标题)→ `font-body`(宋体正文)→ `font-sans`(无衬线 UI 文字)。
|
||||
|
||||
动画:GSAP ScrollTrigger 驱动页面滚动揭示,逐字 blur 动画用于标题,CSS transition 处理微交互。
|
||||
|
||||
## 部署
|
||||
|
||||
```bash
|
||||
pnpm build
|
||||
pnpm start
|
||||
```
|
||||
|
||||
或部署到 Vercel / 任意 Node.js 主机。
|
||||
|
||||
## License
|
||||
|
||||
MIT
|
||||
|
||||
Reference in New Issue
Block a user