# ShowGirl **Repository Path**: csecong/show-girl ## Basic Information - **Project Name**: ShowGirl - **Description**: 多用户个人展示平台 - **Primary Language**: Java - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-02-03 - **Last Updated**: 2026-03-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Show Girl - 社交博客平台 Show Girl 是一个功能完善的全栈社交博客平台,采用微服务架构设计,支持多端部署和跨平台应用。 ## 📋 项目概述 本项目是一个完整的社交博客系统,包含以下主要功能模块: - **用户系统**:注册登录、第三方OAuth认证、JWT令牌管理 - **博客管理**:博客创建、编辑、删除、隐私设置 - **文章系统**:文章CRUD、标签管理、阅读/点赞/评论统计 - **社交功能**:关注/粉丝、点赞、收藏、评论回复 - **权限管理**:基于RBAC的完整权限控制系统 - **系统配置**:数据字典、系统参数配置 ## 🏗️ 技术架构 ### 前端 (Admin) - **框架**: Vue 3 + Vite - **路由**: Vue Router - **状态管理**: Pinia - **UI组件**: Element Plus / Ant Design ### 后端 (API) - **架构**: Spring Boot 微服务 - **服务发现**: Nacos / Eureka - **API网关**: Spring Cloud Gateway - **认证授权**: JWT + Spring Security - **数据库**: MySQL + Redis - **ORM框架**: MyBatis-Plus ### 移动端 (App) - **框架**: .NET MAUI - **跨平台**: Android、iOS、macOS、Windows ## 📁 项目结构 ``` show-girl/ ├── Admin/showgirl-admin/ # Vue3 管理后台前端 ├── Api/ # 后端微服务 │ ├── admin-service/ # 管理员服务 │ ├── auth-service/ # 认证授权服务 │ ├── blog-service/ # 博客服务 │ ├── common/ # 公共模块 │ ├── gateway/ # API网关 │ ├── post-service/ # 文章服务 │ └── social-service/ # 社交服务 ├── App/ShowGirl/ # MAUI跨平台应用 ├── DOC/ # 文档资源 │ └── app-icons/ # 应用图标 └── LICENSE # 开源协议 ``` ## 🚀 快速开始 ### 环境要求 - JDK 17+ - Node.js 18+ - MySQL 8.0+ - Redis 6+ - Maven 3.8+ ### 后端部署 ```bash # 1. 创建数据库 mysql -u root -p < DOC/init_db.sql # 2. 导入初始数据 mysql -u root -p < DOC/seed_data.sql # 3. 构建微服务 cd Api mvn clean install -DskipTests # 4. 依次启动服务 cd admin-service && mvn spring-boot:run cd auth-service && mvn spring-boot:run # ... 启动其他服务 ``` ### 前端部署 ```bash # 1. 安装依赖 cd Admin/showgirl-admin npm install # 2. 启动开发服务器 npm run dev # 3. 构建生产版本 npm run build ``` ### 移动端部署 ```bash cd App/ShowGirl dotnet restore dotnet build -c Release # 发布到各平台 dotnet publish -c Release -f net8.0-android dotnet publish -c Release -f net8.0-ios ``` ## 📖 API 文档 启动服务后,可通过以下地址访问 Swagger 文档: | 服务 | 地址 | |------|------| | 认证服务 | http://localhost:8081/swagger-ui.html | | 博客服务 | http://localhost:8082/swagger-ui.html | | 文章服务 | http://localhost:8083/swagger-ui.html | | 社交服务 | http://localhost:8084/swagger-ui.html | | 管理员服务 | http://localhost:8085/swagger-ui.html | ## 🔐 认证流程 系统采用 JWT 进行无状态认证: 1. 用户通过账号密码或第三方 OAuth 登录 2. 服务端验证身份后返回 AccessToken 和 RefreshToken 3. 后续请求携带 AccessToken(Bearer Token) 4. AccessToken 过期后使用 RefreshToken 换取新令牌 ## 📱 功能模块 ### 用户模块 - 用户注册与登录 - 第三方账号绑定(OAuth) - 登录日志记录 - 登录安全保护(失败次数限制、账户锁定) ### 博客模块 - 博客 CRUD 操作 - 博客隐私设置 - 阅读量统计 ### 文章模块 - 文章发布与编辑 - 标签管理 - 阅读/点赞/评论计数 - 文章标签关联 ### 社交模块 - 用户关注/取消关注 - 点赞/取消点赞 - 收藏/取消收藏 - 评论与回复 - 点赞统计 ### 管理模块 - 用户管理 - 角色管理 - 权限管理 - 数据字典 - 系统配置 - 博客/评论管理 ## 📄 许可证 本项目采用 MIT 许可证开源,详见 LICENSE 文件。 ## 🤝 贡献指南 欢迎提交 Issue 和 Pull Request,请确保代码符合项目规范。 ## 📞 联系方式 - 项目地址: https://gitee.com/csecong/show-girl - 问题反馈: https://gitee.com/csecong/show-girl/issues