15、项目搭建:绘制城堡蓝图——React 19 工程配置
一、魔法结界初始化
1. 召唤项目骨架
npx create-next-app@latest hogwarts-castle --ts --tailwind  核心咒语:
• --ts:激活预言水晶球(TypeScript类型安全)
• --tailwind:注入飞天扫帚级原子样式(Tailwind CSS)
• 选择App Router模式构建九又四分之三站台(路由系统)
2. 跨维度依赖配置
npm install @supabase/supabase-js量子纠缠矩阵:
• Supabase:霍格沃茨图书馆数据库(实时同步预言池)
• 可选react-three-fiber:3D魔法投影系统(WebGL城堡渲染)
二、城堡能量核心配置
1. 星轨目录结构
├── app  
│   ├── (main)  
│   │   ├── page.tsx        # 城堡主厅  
│   │   ├── layout.tsx      # 魔法结界骨架  
│   ├── forbidden-forest    # 禁林(动态路由)  
│   │   └── [path]  
│   │       └── page.tsx  
├── lib  
│   ├── magic               # 咒语库  
│   │   ├── spells.ts       # 基础咒语  
│   │   └── potions.ts      # 魔药配方  
│   └── supabase.ts         # 量子数据库契约  空间法则:
• 组件目录遵循《魔法建筑规范》第7.2条(模块化设计)
• 动态路由实现消失柜穿梭系统(参数化路径)
2. 预言池契约(.env)
NEXT_PUBLIC_SUPABASE_URL=hogwarts.superbase.co  
NEXT_PUBLIC_SUPABASE_KEY=eyJhbG..._9o  
DEEPSEEK_API_KEY=sk-3af3...e4b1  安全守则:
• 密钥存储遵循《凤凰社加密协议》
• 禁止在前端直接暴露SERVER_SIDE_ONLY密钥
三、量子数据库连接
1. 初始化冥想盆
// lib/supabase.ts  
import { createClient } from '@supabase/supabase-js'  
export const supabase = createClient(  process.env.NEXT_PUBLIC_SUPABASE_URL!,  process.env.NEXT_PUBLIC_SUPABASE_KEY!  
)  跨维度特性:
• 实时监听预言变化(supabase.channel())
• 行级安全(RLS)实现摄魂怪防御
2. 魔药配方表契约
-- 数据库SQL咒语  
create table potions (  id uuid primary key,  name varchar(255),  ingredients jsonb,  created_at timestamp with time zone  
);  防御体系:
• 材料字段使用JSONB格式支持量子态存储
• 自动清理过期魔药(pg_cron定时任务)
四、时空流形优化
1. 记忆封印配置(.eslintrc)
{  "extends": ["next/core-web-vitals", "prettier"],  "rules": {  "react-hooks/exhaustive-deps": "error",  "@typescript-eslint/no-floating-promises": "error"  }  
}  性能法则:
• 禁止未处理的异步预言(Promise泄漏检测)
• 强制Hooks依赖项声明防止量子坍缩
2. 星链级构建配置(next.config.ts)
import type { NextConfig } from "next";
const nextConfig: NextConfig = {images: {remotePatterns: [{protocol: 'https',hostname: 'hogwarts-cdn.co',port: '',pathname: '/**',},],}
};
export default nextConfig;高阶特性:
• CDN镜像加速咒语图集加载
• 服务端动作实现无客户端交互魔法
五、黑暗魔法防御体系
1. 摄魂怪检测协议(CI/CD)
# .github/workflows/deploy.yml  
jobs:  build:  steps:  - name: 检测记忆泄漏  run: npm run lint  - name: 量子压缩  run: npm run build  - name: 时空跃迁  uses: vercel/action@v30  with:  project-id: ${{ secrets.VERCEL_PROJECT_ID }} 自动防御:
• 提交前自动执行遗忘咒(Husky钩子)
• Vercel边缘网络部署实现全球幻影移形
六、预言家日报:下期预告
"终章《路由守卫:设置魔法结界》将揭秘:
-  凤凰社认证协议 - 用 PrivateRoute构建登录结界
-  分院帽权限系统 - RBAC实现四学院权限隔离 
-  摄神取念术 - 路由切换时的预言预加载 
-  量子纠缠防御 - 防止未授权时空跳跃" 
🔮 魔典附录
-  完整契约卷轴 

