- packages/core: @aidir/core 底座库(src/pages 页面组件体 1:1 镜像路由树 / kit 站点外壳工厂 / content/blog / scripts) - sites/: 5 个独立 Next.js 网站(ai-stack / launchai / the-ai-ledger / devai-tools / findai) - 每站独立 package.json / next.config / tailwind / messages / .env / 构建 - src/app 约 56 个薄路由文件(re-export 底座页面 + 内联路由段配置 revalidate/dynamic) - src/site/brand.tsx 站点配置 + src/site/home.tsx 站点首页(createMarketingLayout / createHomePage 工厂) - generate-site.mjs: 站点生成器(新增网站 = SITES 加条目,零 Core 修改) - start-all-sites.sh: 一键启动 3001-3005 - next-config.mjs: 底座统一 Next 配置工厂(next-intl + MDX + standalone) - 五站共享同一套 PostgreSQL / Better Auth / Admin(设计文档 §42) - 验证: 5 站 build OK / typecheck OK / 55 路由冒烟 200 / 品牌-内容-截图 差异确认 / 登录-投票-重复检测 e2e PASS
21 lines
563 B
JavaScript
21 lines
563 B
JavaScript
import { defineConfig, globalIgnores } from "eslint/config";
|
|
import coreWebVitals from "eslint-config-next/core-web-vitals";
|
|
|
|
export default defineConfig([
|
|
...coreWebVitals,
|
|
globalIgnores([
|
|
".next/**",
|
|
"node_modules/**",
|
|
"src/drizzle/**",
|
|
"src/lib/blog-manifest.generated.ts",
|
|
]),
|
|
{
|
|
rules: {
|
|
// eslint-config-next 16 引入的 React Compiler 严格规则,
|
|
// 存量代码待逐步重构,先降为警告避免阻塞 CI
|
|
"react-hooks/set-state-in-effect": "warn",
|
|
"react-hooks/purity": "warn",
|
|
},
|
|
},
|
|
]);
|