过去我总是以用什么工具来写文档(文章)而纠结,直到遇见了语雀。
yuque-blog 是最近这几个周末用业余时间设计和实现的一个博客系统,核心目标是:“在语雀上(和你的小伙伴一起)编辑文章,在自己的网站上展示文章”。它基于语雀,实现了博客内容页面的自定义输出,支持同构直出、离线访问等特性;技术架构上,我选用了 beidou (基于 eggjs 的同构框架) 作为后端框架,前端框架采取了常见的 React 全家(半)桶。
yuque-hexo 是用于下载语雀的文章到 hexo 的文章目录下的一款命令行工具。
常见的博客平台根据其形态大致分为以下几类:
一般来说,在服务器资源允许的条件下,有后台的博客系统(基于 PHP 的 WordPress,使用 Node.js 的 Ghost )是比较普遍的方案,通常情况都会提供一个内容管理的后台管理页面,让写者集中在写作本身,没有太多额外的(技术性)操作;下面可以在几方面稍微对比一下,不同方案下的优劣;
|
完全静态
|
静态页面+第三方内容管理
|
完全动态
|
经典案例
|
GIthub Pages ( Hexo / Hugo )
|
Github Pages + Github Issue
Github Pages + Serverless
|
WordPress / Ghost / Calypso / Typecho
|
内容管理
|
+
|
++
|
+++
|
团队协作
|
++
|
+++
|
+++
|
文章编辑
|
+
|
++
|
+++
|
RSS 订阅
|
+++
|
+++
|
+++
|
可扩展性
|
+
|
++
|
+++
|
社会化生态
|
+++
|
+++
|
+++
|
首屏加载
|
+++
|
+
|
++
|
缓存加载
|
++
|
+++
|
++
|
SEO
|
+++
|
+
|
+++
|
性能
|
+++
|
++
|
+
|
环境简易程度
|
+++(静态文件服务器)
|
++(静态文件服务器+第三方内容管理系统)
|
+(独立部署的 HTTP 服务)
|
语雀是一款拥有非常优秀的编辑 / 阅读体验,支持团队协作的知识创作平台; TXD 团队博客包含前端、视觉、交互同学积累的精华文章,由于成员背景原因(设计写代码???),方案 1 和 方案 2 显然不是最佳的选择(设计师的学习成本和内容维护难易度),加上团队里面日常工作中使用语雀来编辑文档和知识仓库梳理,为了降低写作者的学习成本,以及提供良好的编辑体验,决定基于语雀去开发一套完全动态的博客系统。
其中实现的主要的特性如下:
对于一些有专业背景的同学而言,Github Pages 是最好的博客载体,其要求我们能够提供一个可以输出静态页面的版本;考虑到大多数同学原有的一些基础建设,决定不再重复制作轮子,于是便基于 hexo 开始设计和思考,经过了一系列的预研工作(看源码、找参考……),最终一把梭开发了一个无侵入的命令行小工具 yuque-hexo,只负责同步语雀的文章,下载到本地后生成对应的 hexo 的文章( markdown 文件),对原有的逻辑没有做任何的改造,纯粹的进行了功能扩展。
言归正传,适合自己的才是最好的,体验一款好的产品,再到利用这个产品来扩展到一些相似的场景下,然后系统性的对该场景下的各种设计进行了调研分析和总结,从而达到提升体验和效率的目的。
1
hobochen 2018-12-15 13:22:57 +08:00
虽然说我也是 Alibaba 的 但是我还是觉得 LZ 这样的硬广哪里不对
|
2
imn1 2018-12-15 14:05:56 +08:00 1
一直以为「语雀」是语音麻将游戏
|
6
xxb 2019-01-31 14:14:36 +08:00
我也用楼主方案,有个问题,yuque-hexo 一个 repo 只对应一个语雀知识库,但实际上语雀会有多个知识库,有办法支持多个 repo 吗?
|
8
SenLief 2019-10-26 21:03:19 +08:00
整一个 yuque-Hugo 呗
|
10
jabin88 2019-12-16 17:04:51 +08:00
如果楼主的方案没有搞定的,可以试试 https://www.yuque.com/jabin-ka5gk/wb5yft/cnh9xo,直接一键运行即可。基于 webhook 可即时更新
|