⭐B站演示视频 :基于SpringBoot与Vue的博客+刷题网站,让ChatGPT帮你准备面试吧~
接口文档:https://chat-viewer.apifox.cn/
后端技术栈:
- 😄SpringBoot + MyBatis-Plus
- 🔒SpringSecurity + JWT:鉴权
- ❤Redis:点赞业务缓存、高频访问数据缓存
- 📃Kafka: 解耦点赞、评论操作 与 通知生成
- ✉️短信服务、文件存储
- 🧚♂️PlexPt ChatGPT SDK:流式问答,支持使用官方API-Key和限额token两种方式。
- 🛒Redisson分布式锁、Lua脚本、RabbitMQ消息队列实现限量免费token秒杀
- ⛷️CompletableFuture
前端技术栈:Vite(Vue3) + Element-UI Plus + Pinia + Vditor (因为没有找到比较符合的前端项目所以只好自己写了一下,但代码规范性和合理性可能会差一些)
部署:Docker + Nginx
服务器代理:clash-for-linux
代码规范:后端代码全部通过阿里编码规约扫描。
TODO:
- ES全文搜索
- 更完善的权限控制
- 拆为微服务
ChatViewer还有很多不完善的地方,如果您有宝贵的建议、不满 or 疑问,欢迎提issue!作者将尽快回复。
如果你对这个项目感兴趣,想要一起让它变得更好,欢迎联系我一起contribute!mail:18231041@buaa.edu.cn
接口文档:https://chat-viewer.apifox.cn/
后端项目在main分支下,前端项目在frontend分支下。
本地新建SpringBoot项目,将ChatViewer项目clone至对应文件夹下。
删除application.properties
文件。
运行有可能出现编码问题,在settings中更改编码,apply。然后将application.yml
中的内容复制到记事本,删除application.yml
文件并新建application.yml
文件,粘贴记事本内容,Run以测试SpringBoot项目能否启动。
若能够启动,更改application.yml
中MySQL、Redis、Kafka相关设置,以及GPT与阿里云key,再次Run,项目应能正确运行。