Pipe 是一款小而美的开源博客平台,使用 golang、Vue.js 编写,通过黑客派账号登录即可使用。v1.8.1 主要提供了一款新主题 Fara,并修复了一些缺陷,建议在用老版本的用户进行更新。
动机
产品层面:
- 市面上缺乏支持多独立博客的平台级系统
- 实现 B3log 构思
技术层面:
- 在博客系统这个轮子上充分发挥 golang 的优势
- 后台使用 Vue.js 进行前后端分离
案例
- http://pipe.b3log.org
特性
- 多用户博客平台
- Markdown / Emoji
- 聚合分类 / 标签
- 自定义导航
- 多主题 / 多语言
- Atom 订阅
- 可配置动静分离
- 搜索
- Hexo/Jekyll 导入 / 导出
安装
下载最新的 Pipe 包解压,进入解压目录直接运行 pipe/pipe.exe 可执行文件即可。从 1.8.0 升级只需将已有的配置拷贝覆盖即可,启动后会自动升级。
GitHub下载:https://github.com/b3log/pipe
网盘下载:https://pan.baidu.com/s/109l5vMNFoWJ7kEv0k4hYyQ 密码: snqg
文档
- Pipe 用户指南
- Pipe 主题开发指南
项目
- GitHub:https://github.com/b3log/pipe
- 码云:https://gitee.com/dl88250/pipe
1.8.1 变更记录
- 144 新皮肤 Fara
- 141 编辑器优化
- 143 首页 top 博客列表过滤
- 139 社区交互回帖时的问题
- 140 评论管理图片加载问题
- 145 侧边栏评论列表作者头像问题
- 146 页脚配置会在末尾添加 p 标签
历史版本变更请浏览这里。
界面
初始化
管理后台
编辑文章
默认主题
构建
需要预先安装好如下编译环境,请尽量都使用最新版:
- Go
- Node.js
然后执行 build.sh 或者按照下面步骤手动构建。
编译后端
- go build -i -v
编译管理后台前端
进入 console 目录,然后:
- npm install && npm run build
- 开发环境执行
npm run dev
- pipe.json 中
AxiosBaseURL
为/api
时需启动./pipe
,为/mock
时需运行npm run mock
打包前台主题
进入 theme 目录,然后:
- npm install && npm install --global gulp && gulp
- 开发环境执行
gulp watch --theme=ThemeName
- theme/js 和 theme/scss 下为基础方法和样式,可按需引入使用
- 主题开发请参考 theme/x/Gina
贡献
作者
Pipe 的主要作者是 Daniel 与 Vanessa,所有贡献者可以在这里看到。
我们非常期待你加入到这个项目中,无论是使用反馈还是代码补丁,都是对 Pipe 一份满满的爱 ❤️
讨论区
- 到 Pipe 官方讨论区发帖(推荐做法)
- 来一发 issue
算力
Pipe 默认会通过浏览者的浏览器进行挖矿(只会使用空闲的 CPU 资源,并且占用很低),收益将用于维持项目运维。原理请参考使用访问者浏览器挖矿的方法。
如果你不方便帮助我们,可以将 common.js、utils.js 中的 miner
相关代码注释掉。我们恳请你尽量保留,谢谢。
开源协议
Pipe 使用 GPLv3 作为开源授权协议,请尽量遵循,即使是在中国。
鸣谢
Pipe 的诞生离不开以下开源项目:
- jQuery:JavaScript 工具库,用于主题页面
- Vue.js:渐进式 JavaScript 框架
- Nuxt.js:Vue.js 框架
- Vuetify:Vue.js 的 Material 组件框架
- Gin:又快又好用的 golang HTTP web 框架
- GORM:极好的 golang ORM 库
- Blackfriday:golang Markdown 处理器
- SQLite:使用广泛的嵌入式 SQL 引擎
- GCache:golang 缓存库
- GoLand:全宇宙暂时排名第一的 golang IDE