Files
NewSzxcn-Email/apps/web/SHADCN_RULES.md
T
LanQin 3ef8caa319 feat(email): 初始化自建邮箱 MVP
- 新增 Go + SQLite 后端,支持登录、域名、邮箱、别名、联系人、规则、统计与邮件收发。
- 新增 Webmail 前端,支持多邮箱切换、邮件列表/阅读/写信、附件、搜索、主题切换与个人中心。
- 新增 Docker Compose 部署骨架,补充 Postfix、Dovecot、OpenDKIM、Nginx 配置与部署说明。
2026-06-15 00:38:50 +08:00

1.3 KiB

Web shadcn/ui 规则

apps/web 的业务页面和业务组件必须优先并完整使用官方 shadcn/ui 组件源码。

规则

  • 所有 UI primitive 必须来自 @/components/ui/*
  • 新增 UI 能力时,先执行 npx shadcn@latest add <component> 添加官方组件源码。
  • 业务 TSX 禁止直接写原生 <button><input><textarea><select><table><dialog><aside> 等控件。
  • 业务页面不要在标题下方添加说明性小字/副标题文案,例如“管理当前用户资料和密码”“管理当前用户拥有的多个邮箱”这类内容。
  • 业务 TSX 禁止使用 CardDescriptionDialogDescriptionSheetDescription;需要说明时改为清晰标题、表单 Label、按钮或 Badge。
  • 视觉风格必须保持 shadcn new-york + neutral:白底、黑色主按钮、细边框、克制留白。
  • 禁止在业务 TSX 使用蓝色品牌色、渐变背景、重阴影/营销感样式,例如 bg-gradient-**-blue-*shadow-xlshadow-2xlshadow-primary*
  • src/components/ui/** 是官方 shadcn 组件源码,允许内部使用原生标签。
  • 允许语义/布局标签:divspanformheadermainsectionp、标题、a

检查

cd apps/web
npm run check:shadcn
npm run build