# 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/ # 类型定义 ```