一个使用 Turborepo 管理的 monorepo,包含宝宝护理记录应用及共享 UI 组件库。
├── apps/
│ └── web/ # 宝宝日记 Next.js 应用
├── packages/
│ ├── ui/ # 共享 UI 组件库 (基于 shadcn/ui)
│ └── typescript-config/ # 共享 TypeScript 配置
# 安装依赖
pnpm install
# 运行所有应用的开发服务器
pnpm dev
# 只运行 web 应用
pnpm dev:web
# 构建所有项目
pnpm build
# 代码检查
pnpm lint一个简单易用的婴儿护理记录应用,专为月嫂阿姨和家长设计。
- 🌙 睡眠 - 入睡/睡醒记录
- 🍼 喂奶 - 亲喂/瓶喂,时长和奶量
- 🧒 换尿布 - 大小便记录
- 🎯 活动 - 被动操、排气操、洗澡、户外、早教
详细功能规格见
.cursor/rules/features/
- Next.js 16 + Tailwind CSS 4
- PostgreSQL + Prisma ORM
- Vercel (Blob Storage + 部署)
- Turborepo (monorepo 管理)
# 配置环境变量
cp apps/web/.env.example apps/web/.env.local
# 编辑 .env.local 添加数据库连接
# 初始化数据库
cd apps/web && pnpm db:push基于 shadcn/ui 的共享 React 组件库,可在多个应用间复用。
import { Button, cn } from '@bubu-log/ui'
import { Drawer, DrawerContent } from '@bubu-log/ui'当修改了 Prisma schema 后,需要在生产环境运行迁移:
# 方法 1: 使用脚本(推荐)
cd apps/web && pnpm db:migrate:prod
# 方法 2: 手动操作
# 1. 从 Vercel 拉取环境变量
vercel env pull .env.production
# 2. 设置环境变量并运行迁移
export DATABASE_URL=$(grep DATABASE_URL .env.production | cut -d '=' -f2-)
export DATABASE_URL_UNPOOLED=$(grep DATABASE_URL_UNPOOLED .env.production | cut -d '=' -f2-)
cd apps/web && pnpm prisma db push
# 3. 清理临时文件
rm .env.production注意: 确保已安装并登录 Vercel CLI: pnpm add -g vercel && vercel login
MIT