微信公众号:[开源日记],分享10k+Star的优质开源项目
VanBlog 是一款简洁实用优雅的高性能个人博客系统。支持 HTTPS 证书全自动按需申请、黑暗模式、移动端自适应和评论,内置流量统计与图床,内嵌评论系统,配有完备的、支持黑暗模式、支持移动端、支持一键上传剪切板图片到图床、带有强大的编辑器的后台管理面板。
预览图
特性
- [x] 快到极致的响应速度,Lighthouse 接近满分。
- [x] 独一份的按需全自动 HTTPS,甚至不用填域名。
- [x] 包括完整的前后台和服务端。
- [x] 前台和后台都为响应式设计,完美适配移动端和多尺寸设备。
- [x] 前台和后台都支持黑暗模式,并可自动切换。
- [x] 前台为静态网页(SSG),并支持秒级的增量渲染,每次改动无需重新构建全部页面。
- [x] SEO 和无障碍友好。
- [x] 静态网页,CDN 友好。
- [x] 版本号展示和更新提醒。
- [x] 基于 React,项目工程化,二次开发友好。
- [x] 内置强大的分析功能,可统计访客等数据。并配有精美看板。
- [x] 内嵌评论系统。
- [x] 强大的 markdown 编辑器,支持图表和数学公式,一键插入 more 标记,一键剪切板及本地图片上传,支持自定义高亮块语法,支持 Emoji 表情选取。
- [x] TOC、草稿、代码复制、访客数、评论数、分类、标签、搜索、加密、友链、打赏、自定义导航栏。
- [x] 多个布局设置,可自定义页面细节。
- [x] 高度客制化,可添加自定义 CSS、HTML 和 JS 代码。
- [x] 支持自定义页面。
- [x] 可添加具有指定权限的协作者。
- [x] 内置图床,并支持各种 OSS 图床、github 图床(外部图床基于 picgo)等。
- [x] 极致轻量化,没有花里胡哨。页面秒切换、图片懒加载。
- [x] 脚本一键部署,多种部署方式,支持 ARM 平台。
- [x] 支持 GA、百度分析
- [x] 简单易用的后台,支持数据的导出与导入。
- [x] 支持 RSS 订阅
- [x] 完善的 API,完全利用本项目后台和服务端,自己写前端或适配其他页面生成器
- [x] 有较完善的日志记录,后台可直接查看登录日志和 Caddy 日志。
快速上手/部署教程
一键脚本部署
curl -L https://vanblog.mereith.com/vanblog.sh -o vanblog.sh && chmod +x vanblog.sh && ./vanblog.sh
将来如果需要再次运行脚本,可以运行:
./vanblog.sh
TODO
- [x] 精简前台 js 体积,优化性能
- [x] 精简打包体积
- [x] 集成 HTTPS 和自动证书申请续期
- [x] 后台增加登录日志
- [x] 内嵌评论系统
- [x] 支持 ARM64
- [x] 支持 mermaid 语法
- [x] 替换编辑器为 bytemd(掘金同款)(老的编辑器有些臃肿,复制偶尔会有格式会错乱的问题)
- [x] 导入 md 创建文章/草稿功能
- [x] 标签管理
- [x] 黑暗模式图标样式优化
- [x] 内嵌评论的邮件通知和 webhook
- [x] 自定义 css
- [x] 添加自定义 script 标签
- [x] 添加自定义 html 代码
- [x] 可添加具有自定义权限的协作者
- [x] 自定义页面
- [x] RSS 订阅
- [x] 自定义高亮块语法支持
- [x] Emoji 表情选择器
- [x] 自定义导航栏
- [x] 后端性能优化一期(减少不必要的查询, ISR 防抖等)
- [x] Token 管理
- [x] picgo 插件安装
- [x] 忘记密码
- [x] 分类加密
- [ ] 快捷分享按钮
- [x] 完善可自定义上传文件的自定义页面功能(现在的自定义页面有潜在的 css 污染问题)
- [ ] 增加在特定事件后触发执行自定义代码或 webhook 的扩展能力
- [ ] 插件系统
- [ ] 自定义主题(前端渲染器)系统
- [ ] 浏览器消息通知
- [ ] 文章/草稿的历史版本管理
- [ ] 精简配置项,尽可能移动到运行时配置
- [ ] 增加 ORM 层,适配更多数据库
- [ ] 增加一些 e2e 测试,集成到 CI
- [ ] 国际化
更多功能广大网友可以继续挖掘。
微信公众号:[开源日记],分享10k+Star的优质开源项目