Building planetable.xyz

IPNS
 
Planet Feature Update 12

更新了对 WalletConnect 的支持,众多针对 IPFS 的改进和新功能,全新的 Monochrom 头像图片集,及其他使用体验上的改进。

WalletConnectV2

Planet 更新了对 WalletConnect 的支持,升级到了 WalletConnectV2 版本。现在你可以使用手机钱包,比如 Rainbow,OKX 在 Planet 里登录,并用来向你关注的内容创作者打赏 ETH。同时,作为一个重要的基础架构,这也让将来 Planet 支持其他更复杂的合约调用或是 L2,成为可能。

新的 IPFS+ENS 网关

当你为站点生成分享链接时,现在可以使用一个新的高性能 IPFS+ENS 网关 eth.sucks。在设定了 content hash 的 ENS 末尾加上 .sucks 就可以访问上面的 IPFS 网站,比如:

可以从设置中选择这个新的网关。

前段时间,Cloudflare 宣布他们会停止维护 cf-ipfs 网关。所以,目前,还能用的 IPFS+ENS 网关,就是这些了:

一个健康的生态系统需要更多的参与者。

IPFS 控制面板

现在点击左下角显示 Online 的区域,会看到一个新的 IPFS 控制面板:

显示 IPFS 的版本信息,空间占用,及实时的带宽消耗。如果需要,甚至可以从这个控制面板里暂时关闭 IPFS 进程。

用本地 IPFS 网关打开任意 IPFS 资源

现在可以从 File 菜单下找到一个新的 Open 选项,用它来打开任意的 IPFS 或者 ENS 资源地址。

复用 Tags

在为内容选择 tag 时,现在可以从之前已经用过的 tag 里点击选择。

新的站点头像图片集 Monochrom

99 个全新设计的站点头像图片。

在站点设置中,可以选择在保存新的站点头像图片时,存储为圆形图片。这样做的用途是,如果你希望在浏览器的收藏夹中也显示圆形图片,而不是默认的方形。

新的快速分享拖拽

可以用拖拽任意图片放到文章列表,就可以打开一个新的快速分享发帖方式。

新的短文本输入发送

按下 CMD+D 就可以打开一个新的短文本输入发送框,配合 Sepia 主题,很适合用来记录和分享一些简短的想法。

比如这是一个使用 Sepia 主题的 microblog 站点:

sepia.olivida.eth

其他修复和改进

  • 修复了一个会发生在 macOS 12/13 上的文章列表异常。如果你使用的是 macOS 14 那么不会遇到这个问题。
  • 可以在搜索结果列表中使用键盘上下选择结果打开。
  • 模版中现在可以读取到文章主图(hero image)的高宽信息。
  • 站点 IPNS 发布完成时,会用本地通知方式显示最新的 CID。
  • 新的站点设置:Do Not Index。写入一个 robots.txt 规则文件告知搜索引擎不要索引网站。
  • 新的站点设置:Prewarm。每次新文章发布时,Planet 可以自动在当前选择的公共网关上访问一次新文章地址,这样新文章在公共网关的 IPFS 节点里就会有一份新鲜的副本,让其他访问者可以更快打开内容。
  • Insider 版本现在会有一个单独的二进制文件名称 Planet-Insider 以更方便地和其他版本共存。
  • 增加了 Filebase 节点的 Peering,如果你使用 Filebase 的 Pinning 服务,那么可以让 Filebase 的节点更容易完成同步。
 
IPNS

IPNS 是 IPFS 生态中的一个重要组件,全称是 InterPlanetary Name System,一个去中心化的类似域名的系统。

这里是 IPNS 的官方介绍:

内容寻址是 IPFS 找到内容的最基础的方式。但是会有一个问题是,内容 ID 其实是内容的 hash。因此如果内容本身如果发生了任何变化,那么 hash 也会变。所以如果是用内容 ID(CID)来绑定给 ENS 的话,每更新一次博客就去烧 gas 重新设置 ENS 的 Content Hash,在现有的 gas fee 情况下,就太贵了。

而 IPNS 可以解决这个问题。每一个 IPNS 类似加密货币的钱包,会有一对 public key 和 private key。public key 就是 IPNS 的对外的地址,而 private key 可以用来修改这个对外地址所对应的 CID。

因此,当你用 IPNS 来绑定给 ENS 作为 Content Hash 的时候,完整的链条是这样的:

ENS -> IPNS -> CID

其中 ENS 到 IPNS 这层绑定,会需要一次性的 gas 费。

IPNS 到 CID 这一层,是免费的。

这样我们就可以实现用 IPFS 更新内容之后,ENS 上的网站也就能够动态更新,同时只需要消耗一次性的 gas 费。


比如本站的 IPNS 地址是:

k51qzi5uqu5dgbfw2poynnynor8h9kqqoxmzdrxy4h4wnzx1x5p4n40ijtosxk

然后绑定到了 olivida.eth 这个 ENS 域名上。

在所有支持 IPFS + ENS 生态系统的应用中,你可以使用上面的 IPNS 地址或者 ENS 找到同样的内容。

olivida-eth.png

 
关于备份 IPNS Key

目前 Planet 还处在一些非常大的变化中,因此时不时备份你的 IPNS key 是非常有必要的。在 0.6.* 版本中备份的操作方式是侧栏中选中自己的 Planet,然后从 Tools 菜单中按 Export Planet。

export-planet.png