## 博客交流群
2023-12-09:最近项目处于重构中,会经历快速迭代,线上版本不一定是最新,暂时不要上生产环境
2023-12-27: v2 版本重构 初步完成, 从之间的 Java 风格项目改为 Golang 风格, 还有些功能在修补!
项目交流 QQ 群号:777260310
## 博客介绍
<p align=center>
<a href="http://www.hahacode.cn">
<img src="./images/头像.jpeg" width="200" hight="200" alt="阵、雨的个人博客" style="border-radius: 50%">
</a>
</p>
<p align="center">
<a target="_blank" href="#">
<img style="display: inline-block;" src="https://img.shields.io/badge/Go-1.19-blue"/>
<img style="display: inline-block;" src="https://img.shields.io/badge/Gin-v1.8.1-blue"/>
<img style="display: inline-block;" src="https://img.shields.io/badge/Casbin-v2.56.0-blue"/>
<img style="display: inline-block;" src="https://img.shields.io/badge/mysql-8.0-blue"/>
<img style="display: inline-block;" src="https://img.shields.io/badge/GORM-v1.24.0-blue"/>
<img style="display: inline-block;" src="https://img.shields.io/badge/redis-7.0-red"/>
<img style="display: inline-block;" src="https://img.shields.io/badge/vue-v3.X-green"/>
</a>
</p>
[在线预览](#在线预览) | [项目介绍](#项目介绍) | [技术介绍](#技术介绍) | [目录结构](#目录结构) | [环境介绍](#环境介绍) | [快速开始](#快速开始) | [总结&鸣谢](#总结鸣谢) | [后续计划](#后续计划)
您的 Star 是我坚持的动力,感谢大家的支持,欢迎提交 Pr 共同改进项目。
Github 地址:[https://github.com/szluyu99/gin-vue-blog](https://github.com/szluyu99/gin-vue-blog)
Gitee 地址:[https://gitee.com/szluyu99/gin-vue-blog](https://gitee.com/szluyu99/gin-vue-blog)
## 在线预览
博客前台链接:[hahacode.cn](https://www.hahacode.cn)(已适配移动端)
博客后台链接:[hahacode.cn/admin](https://www.hahacode.cn/admin)(暂未专门适配移动端)
> 博客域名已通过备案,且配置 SSL,通过 https 访问
测试账号:[email protected],密码:11111,前后台都可用这个账号登录
> 在线接口文档地址:[doc.hahacode.cn](http://doc.hahacode.cn/),准备换成 Swagger
以下放几张简单的预览图,强烈建议点击上面的[预览链接](#在线预览)进去体验下:
![前台首页图片](./images/前台首页.png)
![前台首页文章列表](./images/前台文章列表.png)
![后台文章列表](./images/后台文章列表.png)
## 有 Docker 环境可一键启动效果
Linux/Mac 可直接运行,Windows 要使用 GitBash 运行(默认终端不能执行 shell)
```bash
git clone https://github.com/szluyu99/gin-vue-blog
cd gin-vue-blog/deploy
./bootstrap.sh
```
## 项目介绍
Github 上有很多优秀的前后台框架,本项目也参考了许多开源项目,但是大多项目都比较重量级(并非坏处),如果从学习的角度来看对初学者并不是很友好。本项目在以**博客**这个业务为主的前提下,提供一个完整的全栈项目代码(前台前端 + 后台前端 + 后端),技术点基本都是最新 + 最火的技术,代码轻量级,注释完善,适合学习。
同时,本项目可用于一键搭建动态博客(参考 [快速开始](#快速开始))。
前台:
- 前台界面设计参考 Hexo 的 Butterfly 设计,美观简洁
- 响应式布局,适配了移动端
- 实现点赞,统计用户等功能 (Redis)
- 评论 + 回复评论功能
- 留言采用弹幕墙,效果炫酷
- 文章详情页有文章目录、推荐文章等功能,优化用户体验
后台:
- 鉴权使用 JWT
- 权限管理使用 CASBIN,实现基于 RBAC 的权限管理
- 支持动态权限修改,前端菜单由后端生成(动态路由)
- 文章编辑使用 Markdown 编辑器
- 常规后台功能齐全:侧边栏、面包屑、标签栏等
- 实现记录操作日志功能(GET 不记录)
- 实现监听在线用户、强制下线功能
- 文件上传支持七牛云、本地(后续计划支持更多)
- 对 CRUD 操作封装了通用 Hook
其他:
- 采用 Restful 风格的 API
- 前后端分离部署,前端使用 Nginx,后端使用 Docker
- 代码整洁层次清晰,利于开发者学习
- 技术点新颖,代码轻量级,适度封装
- Docker Compose 一键运行,轻松搭建在线博客
### 技术介绍
> 这里写一些主流的通用技术,详细第三方库:前端参考 `package.json` 文件,后端参考 `go.mod` 文件
前端技术栈: 使用 pnpm 包管理工具
- 基于 TypeScript
- Vue3
- VueUse: 服务于 Vue Composition API 的工具集
- Unocss: 原子化 CSS
- Pinia
- Vue Router
- Axios
- Naive UI
- ...
后端技术栈:
- Golang
- Docker
- Gin
- GORM
- Viper: 支持 TOML (默认)、YAML 等常用格式作为配置文件
- Casbin
- Zap
- MySQL
- Redis
- Nginx: 部署静态资源 + 反向代理
- ...
其他:
- 腾讯云人机验证
- 七牛云对象存储
- ...
### 目录结构
> 这里简单列出目录结构,具体可以查看源码
代码仓库目录:
```bash
gin-vue-blog
├── gin-blog-admin -- 博客后台前端
├── gin-blog-front -- 博客前台前端
├── gin-blog-server -- 博客后端
├── deploy -- 部署
```
> 项目运行参考:[快速开始](#快速开始)
后端目录:简略版
```bash
gin-blog-server
├── api -- API
│ ├── front -- 前台接口
│ └── v1 -- 后台接口
├── dao -- 数据库操作模块
├── service -- 服务模块
├── model -- 数据模型
│ ├── req -- 请求 VO 模型
│ ├── resp -- 响应 VO 模型
│ ├── dto -- 内部传输 DTO 模型
│ └── ... -- 数据库模型对象 PO 模型
├── routes -- 路由模块
│ └── middleware -- 路由中间件
├── utils -- 工具模块
│ ├── r -- 响应封装
│ ├── upload -- 文件上传
│ └── ...
├── routes -- 路由模块
├── config -- 配置文件
├── test -- 测试模块
├── assets -- 资源文件
├── log -- 存放日志的目录
├── public -- 外部访问的静态资源
│ └── uploaded -- 本地文件上传目录
├── Dockerfile
└── main.go
```
前端目录:简略版
```
gin-vue-admin / gin-vue-front 通用目录结构
├── src
│ ├── api -- 接口
│ ├── assets -- 静态资源
│ ├── styles -- 样式
│ ├── components -- 组件
│ ├── composables -- 组合式函数
│ ├── router -- 路由
│ ├── store -- 状态管理
│ ├── utils -- 工具方法
│ ├── views -- 页面
│ ├── App.vue
│ └── main.ts
├── settings -- 项目配置
├── build -- 构建相关的配置
├── public -- 公共资源, 在打包后会被加到 dist 根目录
├── package.json
├── package-lock.json
├── index.html
├── tsconfig.json
├── unocss.config.ts -- unocss 配置
└── vite.config.ts -- vite 配置
├── .env -- 通用环境变量
├── .env.development -- 开发环境变量
├── .env.production -- 线上环境变量
├── .gitignore
├── .editorconfig -- 编辑器配置
```
部署目录:简略版
```
deploy
├── build -- 镜像构建
│ ├── mysql -- mysql 镜像构建
│ ├── server -- 后端镜像构建 (基于 gin-blog-server 目录)
│ └── web -- 前端镜像构建 (基于前端项目打包的静态资源)
└─
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
这里为你收集整理了关于毕业设计、课程设计可参考借鉴的资料一份,质量非常高,如果你投入时间去研究几天相信肯定对你有很大的帮助。到时候你会回来感谢我的。 本资源是经过本地编译测试、可打开、可运行的项目、文件或源码,可以用于毕业设计、课程设计的应用、参考和学习需求,请放心下载。 祝愿你在这个毕业设计项目中取得巨大进步,顺利毕业! 但还需强调一下,这些项目源码仅供学习和研究之用。在使用这些资源时,请务必遵守学术诚信原则和相关法律法规,不得将其用于任何商业目的或侵犯他人权益的行为。对于任何因使用本资源而导致的问题,包括但不限于数据丢失、系统崩溃或安全漏洞,风险自担哦!
资源推荐
资源详情
资源评论
收起资源包目录
毕业设计-Golang 全栈博客支持 Docker Compose 一键部署基于最新前后端技术栈 Vue3TSU.zip (299个子文件)
mysql.cnf 241B
server.crt 74B
index.css 2KB
nprogress.css 2KB
loading.css 1KB
animate.css 1KB
common.css 326B
normal.cur 4KB
handwriting.cur 4KB
link.cur 4KB
.env.development 434B
.env.development 270B
Dockerfile 1KB
Dockerfile 664B
Dockerfile 529B
Dockerfile 525B
.dockerignore 13B
.dockerignore 12B
.editorconfig 544B
.editorconfig 544B
.env 771B
.env 60B
.env 29B
.gitignore 377B
.gitignore 371B
.gitignore 368B
.gitignore 328B
.gitignore 105B
docs.go 70KB
main.go 20KB
handle_front.go 13KB
auth.go 11KB
manager.go 9KB
article.go 9KB
handle_menu.go 8KB
handle_user.go 6KB
handle_article.go 6KB
ip.go 5KB
handle_bloginfo.go 5KB
handle_resource.go 5KB
handle_auth.go 5KB
base.go 4KB
comment.go 4KB
z_base.go 4KB
auth.go 4KB
user.go 4KB
config.go 3KB
base.go 3KB
auth_control.go 3KB
operation_log.go 3KB
result.go 3KB
manager_test.go 3KB
handle_tag.go 3KB
handle_category.go 3KB
helper.go 3KB
auth_test.go 3KB
handle_role.go 3KB
handle_comment.go 2KB
handle_message.go 2KB
handle_page.go 2KB
handle_link.go 2KB
qiniu.go 2KB
local.go 2KB
main.go 2KB
category.go 2KB
message.go 2KB
cache_test.go 2KB
comment_test.go 2KB
config_test.go 2KB
jwt.go 2KB
tag.go 2KB
article_test.go 2KB
config.go 2KB
handle_operationlog.go 2KB
main.go 2KB
z_base_test.go 2KB
operation_log.go 1KB
user_test.go 1KB
cache.go 1KB
front.go 1KB
page_test.go 1KB
auth_control_test.go 1KB
email.go 1KB
friend_link.go 1KB
keys.go 1KB
listen_online.go 1KB
page.go 753B
handle_upload.go 710B
encrypt.go 634B
jwt_test.go 568B
oss.go 460B
encrypt_test.go 392B
tencent.go 15B
index.html 2KB
index.html 936B
头像.jpeg 100KB
icons.js 6KB
api.js 5KB
tag.js 4KB
permission.js 4KB
共 299 条
- 1
- 2
- 3
资源评论
高校毕业设计
- 粉丝: 184
- 资源: 385
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功