ThriveX
年輕、高顏值、全開源、永不收費的現代化博客管理系統
? ThriveX是一個年輕、高顏值、全開源、永不收費的現代化博客管理系統,它是一個基於NestJS + Spring Boot的產物,所有技術棧都是目前市面上最主流的
項目預覽: https://liuyuyang.net/
技術架構:
前端:React、 NextJS 、 TailwindCSS 、TypeScript、Zustand、React Form Hooks、Echarts、Antd、Scss、Vercel、Docker
後端: Spring Boot 、Mybatis Plus、MySQL、Qiniu、Swagger、Docker
❤️項目初衷:
一直對網站開發領域很感興趣,從小就希望有一個屬於自己的網站,因此踏上了Web全棧開發的旅途,立誌有朝一日也能開發一款屬於自己的網站。如今歷時2年有餘,一個人從0到1獨立完成整個項目的全棧開發,也算是完成了從小的一個心願
這裡只演示部分前端界面,具體大家可以自行查看-> https://liuyuyang.net
最近比較忙,過段時間寫一篇詳細的項目部署教程,這裡先簡單教大家在本地跑起來
前端or 控制端
環境:Nodejs18 及以上
npm i
npm run dev
後台賬號: admin密碼: 123456
在控制端項目根目錄下創建.env文件,添加如下配置
# 百度统计相关配置
VITE_BAIDU_TONGJI_KEY=
VITE_BAIDU_TONGJI_SECRET_KEY=
VITE_BAIDU_TONGJI_SITE_ID=
VITE_BAIDU_TONGJI_ACCESS_TOKEN=
VITE_BAIDU_TONGJI_REFRESH_TOKEN=
# 星火AI相关配置
VITE_AI_APIPassword=
VITE_AI_MODEL=百度接口申請地址:https://tongji.baidu.com/api/manual/Chapter2/openapi.html
星火大模型接口申請地址:https://www.xfyun.cn/
後端
環境:Java8 + MySQL8
安裝maven依賴,配置application-dev.yml相關的信息
lyy :
email :
host : smtp.qq.com
port : 465
username : 你的邮箱账号
password : 你的邮箱授权码
oss :
accessKey : 七牛云的accessKey
secretKey : 七牛云的secretKey
bucket : thrive導入後端根目錄的ThriveX.sql數據庫文件,最後運行項目即可
前端:https://liuyuyang.net/article/2206
後端:https://liuyuyang.net/article/2207
├── public // 存放公共资源
├── src // 核心源码
│ ├── api // 所有API接口
│ ├── app
│ │ ├── error.tsx // 自定义错误页
│ │ ├── favicon.ico // 项目图标
│ │ ├── layout.tsx // 网站布局
│ │ ├── loading.tsx // 自定义加载页
│ │ ├── not-found.tsx // 自定义404页
│ │ ├── page.tsx // 首页
│ ├── assets // 存放项目所有资源
│ │ ├── font
│ │ ├── image
│ │ └── svg
│ ├── components // 公共组件
│ ├── stores // 数据全局共享
│ ├── styles // 全局样式
│ ├── types // 全局类型
│ └── utils // 通用方法
├── package-lock.json
├── package.json
├── postcss.config.mjs
├── tailwind.config.ts
└── tsconfig.json
前端:LiuYuYang01/ThriveX-Blog (github.com)
控制端:LiuYuYang01/ThriveX-Admin (github.com)
後端:LiuYuYang01/ThriveX-Server (github.com)
前端:LiuYuYang01/Thrive-Blog (github.com)
控制端:LiuYuYang01/Thrive-Admin (github.com)
後端:LiuYuYang01/Thrive-Server (github.com)
為了項目的生態越來越強大,作者在這裡懇請大家保留ThriveX博客系統版權
在項目Star突破2K後大家可自由選擇刪除or保留
如果對該項目進行二次開發,最終需將項目進行開源並保留版權且禁止任何商業行為
最後希望大家能夠請遵守開源協議: AGPL-3.0 license
弘揚開源精神,從你我做起!
這個項目是我一個人從設計-> 產品-> 前端-> 控制端-> 後端以及數據庫從0到1創造的,一個人的精力有限,項目可能會存在一些隱藏的BUG ,希望大家能夠及時在GitHub向我反饋,這樣也好加以改正,不斷改善,成為最佳!
當然我更希望大家能夠提交PR成為ThriveX的貢獻者,大家一起參與進來,構建一個強大的博客管理系統!
最後我想說該項目的風格借鑒了很多網站的靈感,下面我主要列舉幾個:
https://blog.zwying.com/
https://www.blatr.cn/
https://poetize.cn/
加微信拉群:liuyuyang2023
下面總結一些大家常問的疑惑
問:為什麼會想到開發這個項目?
答:在開發這個項目之前我也使用了很多流行的博客系統,比如: WordPress (使用了兩年)、 Emlog 、 Zblog (一年)、 Typecho (兩年)
這些系統都有一個共同點,它們都是基於PHP開發的,如果不會PHP就不好自定義網站主題和功能插件,只能去找別人寫好的,如果別人沒有寫,那麼你就沒辦法用,這樣就會有很大的局限性。
關鍵是PHP在國內已經被淘汰了,所以沒有必要再去刻意學習這門語言。因此我就萌生了自己開發一整個博客系統的想法,從22年正式落實並開發,目前已經持續完成三大版本,分別是:
樣式借鑒了很多大佬的網站風格,但代碼都是自己一行一行敲出來的,目前在Github已有近3000次代碼提交記錄
項目的所有技術棧都是目前最主流的,是一個非常年輕的現代化博客管理系統?
問:為什麼技術棧不採用純前端做全棧?比如Nextjs + Prisma ,目前Nextjs + Spring Boot實在太臃腫了
答:因為我想把前端、控制端、後端全部分離,任何地方都可以相互獨立出來。比如你想自己寫前端,不管你使用哪些技術棧,只需要調用後端接口就可以自己開發。
如果使用了Nextjs做全棧,那麼前後端就會捆綁起來,這樣的話前端就必須使用React而且如果不懂Nextjs會加大開發以及學習成本
問:後期是否會考慮收費
答:有很多跟我一樣從0到1寫博客系統的同行,但他們大多數以盈利為目地而開發,而且更新頻率並不高
我可以在此承諾, ThriveX在現在乃至未來不會以任何方式收費,就連讚助二維碼都不會有,格局直接拉滿?
這個項目純純為愛發電,這一點是所有博客系統當中比不了的
問:大家可能會覺得我不以盈利為目的最終會喪失熱情導致不再維護,其實我想說這個顧慮可以打消
答:在這兩年期間內我已經累計提交了近3000次代碼,只要工作之餘有時間我都會不斷的更新維護