Files
nanami-web/README.md
2026-03-18 17:13:27 +08:00

75 lines
1.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Nanami Web - WoW Addon Platform
World of Warcraft 插件发布与下载平台。
## 技术栈
- **框架**: Next.js 16 (App Router)
- **语言**: TypeScript
- **UI**: TailwindCSS + shadcn/ui
- **数据库**: PostgreSQL + Prisma ORM
- **认证**: NextAuth.js (Credentials Provider)
- **部署**: Docker + docker-compose
## 本地开发
### 前置条件
- Node.js 20+
- PostgreSQL 16+
### 安装
```bash
npm install
cp .env.example .env
# 编辑 .env 中的 DATABASE_URL 和其他配置
```
### 数据库设置
```bash
# 推送 schema 到数据库
npm run db:push
# 初始化管理员账号和示例数据
npm run db:seed
```
### 启动开发服务器
```bash
npm run dev
```
访问 http://localhost:3000 查看前台http://localhost:3000/admin 进入后台管理。
默认管理员账号:`admin` / `admin123`
## Docker 部署
```bash
# 启动所有服务
docker compose up -d
# 初始化数据库
docker compose exec app npx prisma db push
docker compose exec app npx tsx prisma/seed.ts
```
## 项目结构
```
src/
├── app/
│ ├── (public)/ # 前台页面
│ ├── admin/ # 后台管理
│ └── api/ # API 路由
├── components/
│ ├── ui/ # shadcn/ui 组件
│ ├── public/ # 前台组件
│ └── admin/ # 后台组件
├── lib/ # 工具库
└── types/ # 类型定义
```