charilezhou
|
90513e8278
|
feat: 实现完整的 OIDC Provider 功能
- 后端:基于 node-oidc-provider 实现 OIDC Provider
- 支持 authorization_code、refresh_token、client_credentials 授权类型
- Redis adapter 存储会话数据,Prisma adapter 存储持久化数据
- 客户端管理 CRUD API(创建、更新、删除、重新生成密钥)
- 交互 API(登录、授权确认、中止)
- 第一方应用自动跳过授权确认页面
- 使用 cuid2 生成客户端 ID
- 前端:OIDC 客户端管理界面
- 客户端列表表格(支持分页、排序)
- 创建/编辑弹窗(支持所有 OIDC 配置字段)
- OIDC 交互页面(登录表单、授权确认表单)
- 共享类型:添加 OIDC 相关 TypeScript 类型定义
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
|
2026-01-20 17:22:32 +08:00 |
|
charilezhou
|
3119460f13
|
feat(plop): 优化生成器支持 Prisma 关联关系
- 支持一对多/多对一关系定义并生成到 Prisma schema
- 简化流程:查询关联配置根据关系自动预填
- 修复 Handlebars 模板 HTML 转义导致的乱码问题
- 修复 controller 模板缺少 Prisma 导入的问题
- 新增页面模板 (page.hbs) 生成前端页面
- 添加 FindAllParams/PaginationQueryDto 索引签名修复类型兼容
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
|
2026-01-19 17:30:18 +08:00 |
|
charilezhou
|
d9673e2ba3
|
chore: 更新配置和依赖
- 添加 MinIO 和邮件服务相关环境变量
- 添加 @nestjs-modules/mailer, minio, multer 等依赖
- 更新 app.module.ts 注册新模块
- docker-compose 添加 MinIO 服务配置
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
|
2026-01-19 12:36:20 +08:00 |
|
charilezhou
|
eac425c2fb
|
chore: 更新依赖和配置
- 更新项目依赖
- 调整 next-env.d.ts 类型配置
- 更新全局样式
- 调整首页内容
- 添加 .playwright-mcp/ 到 gitignore
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
|
2026-01-17 14:09:17 +08:00 |
|
charilezhou
|
c2d9aaedc9
|
feat(web): 重构前端架构并完善认证系统
主要变更:
- 使用 shadcn/ui 重构 UI 组件库
- 实现 Zustand 状态管理(authStore、uiStore)
- 使用 axios 封装 HTTP 客户端,支持 token 自动刷新和加密
- 添加登录/注册表单,支持登录后跳转回原页面
- 实现 Dashboard 布局(Sidebar、Header、UserNav)
- 添加用户管理页面(DataTable、分页、编辑弹窗)
- 添加个人中心和系统设置页面
- 实现全局错误边界和 ErrorBoundary 组件
- 使用 Next.js 16 proxy.ts 替代 middleware.ts
- 修复 ThemeToggle 和 LoginForm 的水合错误
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
|
2026-01-16 21:08:55 +08:00 |
|
charilezhou
|
c958271027
|
feat: 完善认证系统和前端 Demo 页面
- 添加图形验证码模块(登录/注册需验证码)
- 添加 refresh token 机制和 API 接口
- 认证响应返回 token 有效期
- 添加 Redis 模块支持验证码存储
- 添加前端验证码组件和用户管理 Demo 页面
- 添加 CRUD 基类和分页响应 DTO mixin
- 添加请求/响应加密模块(AES-256-GCM)
- 完善共享类型定义和前后端类型一致性
- 更新 CLAUDE.md 文档
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
|
2026-01-16 19:17:11 +08:00 |
|
Charile Zhou
|
3567aaff4d
|
feat: 切换 PostgreSQL 并实现软删除功能
- 数据库从 SQLite 切换到 PostgreSQL,添加 Docker Compose 配置
- 使用 dotenv-cli 支持 .env 和 .env.local 环境变量加载
- 使用 Prisma $extends 实现底层自动软删除机制
- 新增用户恢复和查询已删除用户的 API 接口
- 更新文档和类型定义
|
2025-12-31 20:24:54 +08:00 |
|
charilezhou
|
b5624a664d
|
docs: 更新 CLAUDE.md 并格式化代码
- 补充 React 19、lodash-es、SQLite/cuid2 技术细节
- 运行 prettier 格式化受影响文件
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
|
2025-12-28 16:36:19 +08:00 |
|
charilezhou
|
458348a1a3
|
chore: 升级 Next.js 16 和 ESLint 9
- Next.js 从 15.1.3 升级到 16.1.1
- ESLint 从 8.x 升级到 9.39,迁移到 flat config 格式
- 将 .eslintrc.js 替换为 eslint.config.mjs
- 更新 eslint-config-next 到 16.1.1
- 添加 eslint-plugin-react 支持
- 更新 CLAUDE.md 版本信息
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
|
2025-12-28 15:37:43 +08:00 |
|
charilezhou
|
b5e8b5e805
|
refactor: 使用 lodash-es 重写 shared 工具函数并升级 cuid
- shared 包工具函数改用 lodash-es 实现 (deepClone, isEmpty, capitalize 等)
- Prisma User.id 默认值从 cuid() 改为 cuid(2) 以使用更安全的 cuid2
- 更新 CLAUDE.md 文档,补充 @CurrentUser 装饰器和 lodash 使用约定
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
|
2025-12-28 15:04:55 +08:00 |
|
charilezhou
|
74ced8c0c6
|
chore: 初始化 monorepo 项目脚手架
- 配置 pnpm workspace + Turborepo
- 创建 Next.js 15 前端应用 (apps/web)
- 创建 NestJS 10 后端应用 (apps/api)
- 集成 Prisma ORM + Swagger + JWT 认证
- 添加共享包 (packages/shared, eslint-config, typescript-config)
- 添加项目文档 (README, CLAUDE.md, docs/design.md)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
|
2025-12-28 14:51:40 +08:00 |
|