Talk is cheap#
GitHub:https://github.com/Crossbell-Box/xLog
官方实例:https://xlog.app
使用案例
- https://blog.rss3.io/
- https://blog.diygod.me/
- https://usagiryu.com/
- https://crossbell-blog.xlog.app/
- https://song.xlog.app/
- https://atlas-thinking.xlog.app/
动机#
我的个人博客已经运行了接近 9 年,跟着我慢慢发展,现在几乎已经成为了我的个人发展史,折腾博客也从很久以前就成为了我的一个爱好,但随着对 Hexo 的越来越不满,我决定做一个更现代化的全新的博客系统。
我不想仅仅满足自己的需要,它需要开源和足够开放,来满足更多人的需求。
我不想让我珍贵的数据被中心化平台绑架,又不想麻烦维护一个数据库或服务器,它需要兼顾数据所有权和便利,所以我选择了区块链。
最后,它需要使用较新的技术栈,提供一个更好的开发和维护体验。
功能#
区块链,所有博客数据,包括网站配置、文章、关注、评论、点赞等,都由你签名并存储在区块链上,以 NFT 的形式存在,只能由掌管私钥的你自己控制。
与 Mirror.xyz 的区别:狡猾的一点是,Mirror 是通过他们的官方账号而不是用户自己发起的交易把内容存到了链上。这使得用户需要依赖 Mirror 这个中心化平台才能发布和修改自己的内容,内容在链上的控制权也是属于 Mirror 平台而不是用户自己。
丰富的交互,你可以在区块链上关注你喜欢的博客,评论、点赞文章或把文章铸造为 NFT。
高度可定制,自定义域名、导航栏、自定义样式等,当然,它们都是存储在区块链上的。
技术实现#
xLog 基于另一个开源项目 proselog 开发,使用 Next.js + Tailwind CSS + TypeScript + TanStack Query 构建,有着完善的 SPA、SSR、状态管理和优秀的开发体验。
区块链使用的是专用于社交活动的 EVM 兼容区块链 Crossbell,速度更快且无需购买 gas 免费使用。还能与 Crossbell 其他生态项目无缝衔接,比如你就可以在 Crossbell.io feed 上以信息流的形式查看你订阅的所有 xLog 的动态。
每个博客都是一个属于你的 NFT,它的配置和文章都以符合 Crossbell 规范的格式存储在 NFT 中。创建一个博客就是 mint 一个 NFT,发布一篇文章或一条评论就是对 NFT 增加一项内容,关注一个博客就是修改你的关注列表 NFT。
它是完全开源的,如果感兴趣可以直接去 GitHub 看源码。
存在问题#
- 需要安装一个以太坊钱包才能进行操作,这对没有接触过区块链概念的普通用户可能是一个较大的负担。虽然区块链是一个非常适合的解决方案,但目前区块链在很多普通人眼中已经与割韭菜、炒币画上等号,这更增加了选择区块链作为实现的 xLog 被广泛接受的难度。
- 链上操作都是透明和不可撤销的,这导致用户无法真正删除一篇文章,通过区块链历史可以看到文章的修改记录。
未来计划#
目前还只是一个最小化可用产品,功能可能还不太丰富,但未来会增加主题系统和插件系统,来提供更丰富的样式和功能选择。
另外还计划在获取收益和博客之间的连接上做更多探索,希望可以让写博客 (而不是折腾博客) 这件事变得更有趣一些。