项目部分截图
前台
在线体验地址
前台博客: kuailemao.xyz
后台管理: blog.kuailemao.xyz
测试账号: Test,密码: 123456
ps: 测试账号功能不代表系统所有功能,有些权限过高模块不方便在线展示
Gitee地址: https://gitee.com/kuailemao/ruyu-blog
Github地址: https://github.com/kuailemao/Ruyu-Blog
接口文档: API文档 (kuailemao.xyz)
运行环境:
后端:
名称 环境
- MySQL 8.0
- Redis 7.2.3
- RabbitMQ 最新
- minio 最新
- JDK 17
前端:
名称 环境
项目部署
部署文档地址: https://kuailemao.xyz/article/48
项目特点
前端参考了众多优秀博客大佬设计,页面美观,响应式布局
后台管理基于 Antdv Pro 后台通用框架二次开发
前后端分离,Docker Compose 一键部署
采用 RABC 权限模型,使用 SpringSecurity 进行权限管理
支持动态权限修改、动态菜单和路由
文章、分类、标签、时间轴、树洞、留言板、聊天、友链等模块
站长介绍、公告、电子时钟、随机文章、每日鸡汤、网站资讯
支持代码高亮、图片预览、黑夜模式、点赞、收藏、评论等功能
评论支持在线预览、Markdown、表情包
发送友链申请、通过等自动发送邮件提醒
接入第三方 gitee、github登录,减少注册成本
文章编辑使用 Markdown 编辑器
实现日志管理(操作、登录),服务监控、用户、菜单、角色、权限管理
使用 自己搭建 minio 进行图片存储(避免了使用第三方对象存储被刷流量问题)
使用 拦截器 + Redis 对接口进行了限流处理(每分钟),后端使用 JSR 303 对参数校验,使用 Spring Aop + RabbitMQ 对后台操作日志处理
采用 Restful 风格的 API,注释完善,后端代码使用了大量 stream 流编程方式,代码非常美观
……
技术介绍
前台前端(博客): Vue3 + Pinia + Vue Router + TypeScript + Axios + Element Plus + Echarts……
后台启动(管理): Vue3 + Pinia + Vue Router + TypeScript + Axios + Antdv Pro + Ant Design Vue……
后端: JDK17 + SpringBoot3 + SpringSecurity + Mysql + Redis + Quartz + RabbitMQ + Minio + Mybatis-Plus + Nginx + Docker……
其他: Gitee、Github 第三方登录
运行环境
推荐
最低 2 核 4 G
前端: Docker 后端: jenkins
项目总结
整个项目花费了大量的时间与精力(尤其是前台前端),作者独自手写了三个月左右,除了后台的页面使用了一个后台框架模板外,其他的全部一点一点手写(包括后台的全部模块),这也是我第一次正式的开源一个项目(莫名成就感),虽然但是这个项目我并不觉得很完美,一部分是因为我自己技术有限的原因(主后端的全栈选手),一部分是项目还没经过时间的拷打,开发过程中也参考了很多优秀的项目,在这里感谢大家的开源项目,希望我的项目也能给你带来收获。