歡迎使用 xLog,走走走,上鏈了!
偉大的嘗試 - planet#
自從開始試用了 Planet 之後,現在對 Web3.0 的技術越來越好奇了。因為一開始確實是不是很懂的 “小白” 一個,其實也沒有這麼白了,還是懂一些基本的概念,很多東西還是有待實踐的。 第一次的實踐是 IPFS 的實踐,這裡給我的感覺還是很神奇的,比如寫篇文章上鏈的時候會有各種確認,其實就是要準備付款了。
最近的實踐都做了些什麼呢,買了一個 eth 的域名 一開始認為必須要用 ens 付款,於是乎就買了不少 ens。付款的時候提示餘額不夠,明明已經購買了足夠數量的 ens,但是還是沒法購買域名。經過幾秒的思考,發現似乎被 app.ens.domain 給迷惑了,結賬還是 ETH。於是順理成章的,買了一定數量的 ETH,結果付款的時候發現 gas 的費用又又又漲了,域名的總價就漲了 最後還是咬咬牙買了。我的一個域名就是 qfdka.eth 然後建立了一個自己的網站 作為測試。 發現打開的時候非常的慢。經過一番的了解,應該是文章沒有發布在 IPFS 網絡,也就是沒有人從 “種子” 這裡獲取資源並保存在 IPFS 上面。 這樣就會出現了一個問題,如果你寫完文章,此文章沒有上鏈,也就是沒有在網絡中分發出去,你就關了電腦,得 事情白做了。IPFS 裡面有個 GC 的概念,跟 Java 一樣,這個頻率好像是一小時為週期,自動清理。為了保證資源在 IPFS 上面一直存在就需要一個 🤖來進行 持續訪問,也就是我們所說的 pin 操作。
具體命令如下:
# 把 qfdka.eth 釘在網絡上面
ipfs pin add /ipns/qfdka.eth
另一種方法是使用 第三方服務 filebase,申請 token 每次發布的時候,會自動的進行 pin 操作。 經過一系列的操作按道理你的文章就可以在網絡上訪問了,速度應該不會慢。
峰回路轉 - xLog#
偶然間進入了 Planet 的 telegram 的交流群,學到了很多的知識,裡面看到了一個叫做 xLog 的開源博客,本著好奇的態度就跑去看了看。發現他們的風格我非常的喜歡,於是就有了後面的故事。作為一個使用者看來 Planet 還是很新的 app 全部是英文界面,裡面自定義主題比較複雜的樣子,還下載了靜態服務器,寫了第一篇博文,然後就打不開了,pin 服務雖然有在運行,但是通過不同的網關速度還是不同的。
xLog 驚艷到我的地方就是訪問速度,沒有 Planet 那樣的麻煩,作為一個全棧,就怕看到出現載入動畫。每次打開 ipfs.io/ipns/xxx 的時候幾乎都會有載入動畫,據了解是正在根據 CID 來查找文件。話分兩頭,xLog 點開 @DIYgod 的博客,基本上是秒開,這麼吸引人的地方怎麼可以少了我。立馬就註冊了,註冊是需要錢包連接的,作為之前被 ens 的事件坑爹了之後,這個錢包就用來做偉大實踐了。 掃碼登錄,一切順利,然後去 https://faucet.crossbell.io/ 這裡領取了 0.02 CSB 就可以進行操作了。 這個幣馬上就發來了,真心快,登錄上一切順利。發表了第一篇 Hello world 心裡還是說不出來的興奮,問題就是每一次都要進行掃 (付) 碼 (款) 才能進行下一步,看來寫點兒東西還是有代價的,感謝 crossbell 給我們提供了免費的代幣。
xLog 作者快速響應#
當然作為一款新產品,還是有 bug 的,比如捆綁了自定義域名,居然沒有辦法刪除。馬上去找作者,經過了一番查找聯繫到了作者 @DIYgod,作者反應速度還是很快的,官方就修改了,省的自己瞎折騰了。 給作者反饋的同時也跟著閱讀了一遍代碼,作為一個開源項目,官方反應速度還是一個重要的指標。然後就開始翻翻代碼,為了防止出現 bug 卡到自己,也算是為官方出一份力吧。修了個小 bug,現在可以自定義主頁按鈕了,因為默認主頁是 Home,然鵝我改成中文了 https://github.com/Crossbell-Box/xLog/pull/26 簡單的修改,不會花很多的時間,但是可以幫助項目出一份力,這個就是開源的力量!
寫了個人介紹頁面,但是出現了問題一個,手機界面會出現白條,經過測試是因為二級標題在手機端不適配,自己用暴力的方式來解決了,隨後作者做了官方修復
.xlog-post-toc {
display:none
}
總結#
經過了幾天的嘗試,我感覺這個 xLog 還是很讓人滿意😊 果斷推薦
最後的彩蛋給大家共享一下我的主題吧,其實這裡還可以配置 banners,經過源碼的閱讀發現了很多有趣的玩法 感謝作者
:root {
--theme-color: #0ea5e9;
--theme-color-dark: #0284c7;
--font-fans: SFCompactRounded,PingFang SC,Microsoft YaHei,Lato,sans-serif;
}
.xlog-site-name {
color: var(--theme-color);
}
.xlog-site-info {
border-radius: 0.75rem;
padding: 1rem;
border: 1px;
border-style: dashed;
}
.xlog-site-navigation{
color: #bfdbfe;
}
.xlog-site-navigation a:hover{
color: var(--theme-color);
}