検索
· 読むのにかかる時間 1 分
Electron のウェブサイトに、APIドキュメント、チュートリアル、Electron 関連の npm パッケージなどを瞬時に検索できる新しい検索エンジンを導入しました。
Electron のような新しい技術やフレームワークを覚えるのは大変なことです。 クイックスタート の段階を過ぎると、ベストプラクティスを学んだり、適切な API を見つけたり、夢のアプリを構築するのに役立つツールを発見したりするのが難しくなっていきます。 Electron のウェブサイトを、より早く、より簡単なアプリ構築のために必要なリソースを探せるようなより良いツールにしたいと考えています。
electronjs.org の任意のページにアクセスすると、ページ上部に新しい検索欄が表示されます。
検索エンジン
ウェブサイトに検索を追加しようと思った当初は、バックエンドに GraphQL を使った独自の検索エンジンを試運転しました。 GraphQL の作業は楽しく、検索エンジンは高パフォーマンスでしたが、この構築は分かりきった作業ではないとすぐに気づきました。 複数語での検索やタイプミス検出のようなものは、正しく動くために多くの作業を必要とします。 車輪を再発明するのではなく、既存の検索ソリューションである Algolia を使用することにしました。
Algolia は、React、Vue、Bootstrap、Yarn、その他多数 の人気オープンソースプロジェクトの間で急速に選ばれる検索エンジンとなったホスト型検索サービスです。
ここでは、Algolia が Electron プロジェクトに適していた機能をいくつか紹介します。
- InstantSearch.js はタイプして通常 1ms 以内に結果を提供します。
- タイプミス寛容性 により [
widnow
] と入力しても結果が得られます。 - 高度なクエリ構文 により
"引用符で囲まれた完全一致"
と-除外
ができます。 - API クライアント はオープンソースで、十分にドキュメント化されています。
- 分析 により頻繁に検索されるものや、検索しても見つけらないものがわかります。 これにより、Electron のドキュメントの改善策について、貴重な知見を得ることができます。
- Algolia は オープンソースプロジェクトのための無料 です。