# iam-front 统一认证前端(SSO 登录页),基于 Next.js 16(App Router)+ TypeScript + Tailwind CSS + shadcn/ui。 ## 本地启动 1. 复制环境变量: ```bash cp .env.example .env ``` 2. 安装依赖并启动: ```bash npm install npm run dev ``` > 说明:本项目使用 Turbopack 开发模式(`next dev --turbopack`)。遇到 Linux file watch 限制(ENOSPC)时会自动使用 polling(不影响 Fast Refresh,但可能略增 CPU)。 ## 组件使用示例 统一登录页默认使用带 Tabs 切换的组件(登录/注册): - 页面路由:[login/page.tsx](file:///home/shay/project/backend/iam-front/src/app/login/page.tsx) - 组件入口:[login-form.tsx](file:///home/shay/project/backend/iam-front/src/components/login-form.tsx) 示例(页面内): ```tsx ``` ## 常见问题 ### 1) ENOSPC: System limit for number of file watchers reached 这是 Linux `inotify` 文件监听数量上限过低导致(Next.js/Turbopack 在 dev 模式需要文件监听,超过上限会报错)。 本项目在 `next.config.js` 中做了自动降级:当检测到上限偏低时,会启用 polling watcher 来避免启动失败(可能会略增 CPU 占用)。 你也可以手动启用 polling: ```bash npm run dev:poll ``` 如需从根源修复(需要 sudo 权限),可提高系统上限(示例): ```bash sudo sysctl -w fs.inotify.max_user_watches=524288 sudo sysctl -w fs.inotify.max_user_instances=1024 ```