今週のプロジェクト:WordPress Desktop
今週はAutomatticの皆さんに、WordPressコンテンツを管理するためのオープンソースのデスクトップクライアントであるWordPress Desktopについてお話を伺いました。
誰もがWordPressを知っていますが、WordPress Desktopとは何ですか?
WordPress.comデスクトップアプリは、ブラウザタブに気を散らすことなく、コンテンツとデザインに集中できるシームレスなクロスプラットフォームエクスペリエンスを提供します。また、サイトを脇に置いてアクセスできるようにすることもできます。ブラウザサポートとモバイルアプリと組み合わせることで、どこでも、仕事をするのに役立つ方法でサイトを構築できます。
WordPressサイトを管理するためにデスクトップアプリを構築する理由は何ですか?すべてをウェブベースにすることはできなかったのですか?
実際には、ブラウザでWordPress.comにアクセスするときと同じ技術を正確に使用しています。ただし、すべてがローカルでホストされているため、読み込み時間が最小限に抑えられます。ドックへの表示や通知などのネイティブ機能の利点により、WordPressサイトやブログに集中できます。
なぜElectronでWordPress Desktopを構築することを選んだのですか?
2015年末に、Reactを使用したオープンソースのモダンなJavaScriptアプリであるCalypsoの形でWordPress.comの多くを再構築しました。私たちはElectronを検討し始め、Calypsoにいくつかの変更を加えることで、ローカルで実行できるようになりました。それは魅力的な体験であり、さらに開発する価値があると考えました。
私たちはいくつかのチームでCalypsoに取り組んでいました。従来のデスクトップ技術を使用してこれに一致する完全なマルチプラットフォームGUIクライアントを作成するには、より多くの作業が必要でした。Electronを使用することで、2〜4人の少人数のチームが他のチームの努力を活用し、数か月でデスクトップアプリを構築することができました。
WordPress Desktopの構築中に直面した課題は何ですか?
アプリの最初のバージョンは非常に迅速に実行できましたが、デスクトップアプリとして最適に動作するように調整するには、より多くの時間がかかりました。アプリの大きな課題の1つは、実際にはCalypsoのコピーを自分のマシンで実行していることです。これは純粋にAPI駆動のUIです。これには多くのブリッジング作業が必要であり、変更はCalypso自体にフィードバックされました。
さらに、さまざまなプラットフォーム向けにアプリをパッケージングすることに多くの労力が費やされました。Windows、macOS、Linuxバージョンを提供しており、これをトリッキーにするのに十分な違いがあります。
当時、Electronは比較的新しく、すぐに修正された(時には当日!)問題に遭遇し続けました。
Electronはどの領域で改善されるべきですか?
Electronはすでにデスクトップアプリに必要なもののほとんどを提供しており、使用を開始して以来急速に進歩しています。とはいえ、スペルチェックや検索/置換など、デスクトップアプリでは当然のこととされている一部の領域は、Electronの現状では複製するのが困難です。
また、新しいChromeテクノロジーの一部がElectronにも適用されることを望んでいます。特にWebVRを試してみたいと思っています。
Electronの好きなところは何ですか?
Electronを選択した主な理由であり、最大の強みは、非常に活発でオープンなコミュニティです。Automatticは常にオープンソースを信じてきました。それは私たちのコア原則の1つであり、Electronプロジェクトとコミュニティは、非常にオープンでポジティブであるというコア信念の多くに従っています。
WordPress Desktopの次のステップは何ですか?
私たちのモデルの素晴らしい点は、デスクトップアプリが新しいCalypso機能の恩恵を受けることです。常に改善が加えられています。オフラインサポートなどの追加機能をアプリに追加して、アプリをネイティブ領域に移行させ、より良いシステム通知を提供したいと考えています。
Automatticには、他にもElectronアプリに取り組んでいるチームはありますか?
はい、デスクトップアプリへの取り組みの後、SimplenoteチームはWindowsとLinux向けのデスクトップアプリを構築するためにElectronを使用することにしました(ネイティブのMacクライアントは既に存在します)。Simplenote Electronアプリもオープンソースで、Githubで入手できます。
また、Electronを使用する今後のRaspberry Pi統合も予定しています。
もしこれらに興味があれば、ぜひご連絡ください!
他の開発者にとって役立つかもしれないElectronのヒントはありますか?
署名付きデスクトップソフトウェアの出荷プロセスは、特にWindowsでは、私たちにとって比較的新しいものです。私たちは、Windowsアプリのコード署名に関する記事を書きました。この記事には、プロセスと、それを適切に行うために乗り越えたいくつかのハードルが含まれています。