# StudyProgram **Repository Path**: beita_go/study-program ## Basic Information - **Project Name**: StudyProgram - **Description**: 通用用户权限管理开发 - **Primary Language**: Unknown - **License**: MulanPSL-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2025-10-07 - **Last Updated**: 2025-10-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Study Program 这是一个功能完善的管理系统,包含用户管理、角色权限、多语言支持、熔断机制、监控指标等企业级功能。 ## 功能特性 - **用户管理**:支持用户注册、登录、信息管理及权限分配 - **角色权限**:灵活的角色权限管理系统,支持API权限、菜单权限的分配 - **多语言支持**:完整的国际化(i18n)支持,包含语言配置、用户语言偏好设置 - **熔断机制**:集成熔断器防止服务雪崩,支持数据库、Redis、外部API的熔断 - **监控指标**:提供Prometheus监控指标,涵盖HTTP请求、数据库连接、缓存命中等 - **限流功能**:支持全局、IP、用户级别的请求限流 - **安全防护**:包含CORS、IP白名单、请求大小限制等安全措施 - **日志记录**:详细的操作日志和登录日志记录 ## 快速开始 ### 本地开发环境搭建 1. 安装Go 1.24 2. 安装Docker 3. 安装Node.js (用于前端) ### 启动服务 ```bash # 使用Docker Compose启动所有服务 docker-compose up -d ``` ### 构建应用 ```bash # 构建Docker镜像 docker build -t study-program . ``` ### 运行应用 ```bash # 运行应用 ./main -f etc/api-api.yaml ``` ## 配置说明 配置文件位于`etc/api-api.yaml`,包含数据库连接、Redis配置、安全设置等 ## 开发规范 - Go代码遵循标准格式 - 前端代码使用Vue 3 + TypeScript - 数据库迁移脚本使用SQL文件管理 - 日志使用结构化日志记录 ## 贡献指南 欢迎贡献代码,请遵循以下步骤: 1. Fork仓库 2. 创建新分支 3. 提交代码改动 4. 创建Pull Request ## 许可证 本项目使用Apache-2.0 License,详细信息请查看LICENSE文件