refactor: 主题系统 → monorepo 五个独立网站

- 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
This commit is contained in:
AI Directory Platform
2026-09-08 19:19:33 +00:00
parent e46b4b52a3
commit 4a1a034386
699 changed files with 19829 additions and 2029 deletions
+25
View File
@@ -0,0 +1,25 @@
#!/usr/bin/env bash
# 启动五个独立网站(monorepo sites/*,共享同一套数据库/Auth/Admin)
# ai-stack:3001 launchai:3002 the-ai-ledger:3003 devai-tools:3004 findai:3005
set -e
cd "$(dirname "$0")/../../.."
SITES=(ai-stack:3001 launchai:3002 the-ai-ledger:3003 devai-tools:3004 findai:3005)
for entry in "${SITES[@]}"; do
site="${entry%%:*}"
port="${entry##*:}"
(cd "sites/$site" && bun run start > "/tmp/site-$site.log" 2>&1) &
echo "$site → http://localhost:$port (pid $!)"
done
echo "等待启动..."
sleep 5
for entry in "${SITES[@]}"; do
site="${entry%%:*}"
port="${entry##*:}"
code=$(curl -s -o /dev/null -w "%{http_code}" "http://localhost:$port/" || echo "000")
echo "$site [$port] → HTTP $code"
done
wait