メインコンテンツへスキップ

今週のプロジェクト:Beaker Browser

·4分間の読書

今週は、Paul Frazee氏、Beaker Browserの開発者と話をしました。Beakerは、Datプロトコルを使用してユーザーのデバイスからサイトをホストする実験的なピアツーピアWebブラウザです。


Beakerとは何か、なぜ作成したのか?

Beakerは参加型のブラウザです。インディハッカーのためのブラウザです。

Webはクローズドソースです。ソーシャルメディアの仕組みを左右したいなら、FacebookやTwitterで働く必要があります。検索であればGoogleです。コントロールはユーザー自身ではなく、企業の手の中にあります。

Beakerでは、新しいWebプロトコルである分散アーカイブトランスポート「Dat」を使用します。オンデマンドで無料でサイトを作成し、デバイスから共有します。サーバーは不要です。それが私たちのイノベーションです。

Beakers Protocols

BeakerでDatサイトにアクセスすると、ファイルがダウンロードされます。そのサイトは永久にあなたのものになります。保存、フォーク、変更、そして新しいバージョンを無料で共有できます。すべてオープンソースです。

つまり、オープンソースのウェブサイトのためのブラウザを作っているということです。ソーシャルハッキングのためのツールキットにしたいと考えています。

誰がBeakerを使うべきか?

ハッカー。モッダー。クリエイティブなタイプ。いじくり回すのが好きな人。

Datを使用する新しいプロジェクトを作成するにはどうすればよいか?

git + npmのようなbkrというコマンドラインツールがあります。サイトの作成方法は次のとおりです。

$ cd ~/my-site
$ bkr init
$ echo "Hello, world!" > index.html
$ bkr publish

そして、サイトをフォークする方法です。

$ bkr fork dat://0ff7d4c7644d0aa19914247dc5dbf502d6a02ea89a5145e7b178d57db00504cd/ ~/my-fork
$ cd ~/my-fork
$ echo "My fork has no regard for the previous index.html!" > index.html
$ bkr publish

これらのサイトはブラウザからホストされます。BitTorrentに似ていて、P2Pメッシュでサイトを共有します。

GUIが必要な場合は、ブラウザに基本的なツールが組み込まれていますが、これらのツールをユーザーランドにプッシュしています。すべてモディファイ可能なユーザーアプリになります。

なぜElectronでBeakerを構築することにしたのか?

このプロジェクトでは明らかでした。もし私がChromeを自分でフォークしていたら、今頃C++を書いていたでしょう!誰もそんなことはしたくありません。私はWebスタックを知っていて、それを使って迅速に作業できます。簡単なことです。

実際、Electronなしではこれらを実行できたかどうか分かりません。素晴らしいソフトウェアです。

Beakerを構築中に直面した課題は何ですか?

その半分はツールをいじくり回して、どれくらい自由に使えるかを把握することです。

ブラウザ自体を作るのは非常に簡単でした。Electronは事実上、ブラウザを作るためのツールキットです。…ブラウザタブを除いて、それを正しくするのは永遠に時間がかかりました。最終的に私はSVGの方法を学ぶことにしました。見た目はずっと良くなりましたが、正しくなるまで3回か4回繰り返しました。

Electronを改善すべき分野は何ですか?

開発ツールをwebview内にドッキングできれば本当に素晴らしいです。

Beakerの今後の予定は?

DatサイトのセキュアDNS名。"アプリスキーム"と呼ばれる、社会的に構成可能なURLスキーム。より多くのDat API。

プロジェクトへの貢献に関心のある方のために、Beakerはどこで助けが必要ですか?

多くの未解決の問題があります。遠慮なく私に連絡してください。freenodeの#beakerbrowser。私たちは貢献者向けのページを維持しており、あなたを追加します。そして、オースティンを訪れた際には、ビールをごちそうします。

他の開発者にとって役立つElectronのヒントはありますか?

  1. 既存のビルドツールを使用してください。独自のソリューションと格闘したくありません、信じてください。electron-builderを使用してください。ボイラープレートリポジトリを使用してください。
  2. Electronリポジトリで問題を開く必要がある場合は、再現を容易にするために努力してください。はるかに迅速に応答が得られ、チームはそれを高く評価します。さらに良いことに、自分で修正してみてください。内部を見るのは実際には非常に興味深いです。
  3. すべてのガイドと高度なドキュメントを少なくとも一度は読んでください。
  4. ブラウザを構築しないでください。飽和市場です。