検索
Electronのウェブサイトには、APIドキュメント、チュートリアル、Electron関連のnpmパッケージなどを瞬時に検索できる新しい検索エンジンが搭載されました。
Electronのような新しいテクノロジーやフレームワークを学ぶことは、最初は大変に感じるかもしれません。クイックスタートを過ぎると、ベストプラクティスを学ぶこと、適切なAPIを見つけること、夢のアプリを構築するのに役立つツールを見つけることが難しくなることがあります。私たちは、Electronのウェブサイトを、アプリをより迅速かつ簡単に構築するために必要なリソースを見つけるための、より優れたツールにしたいと考えています。
electronjs.orgの任意のページにアクセスすると、ページの上部に新しい検索入力欄が表示されます。
検索エンジン
最初にウェブサイトに検索機能を追加しようとしたとき、バックエンドとしてGraphQLを使用した独自の検索エンジンを開発しました。GraphQLは使いやすく、検索エンジンも高性能でしたが、すぐに検索エンジンの構築が簡単な作業ではないことに気づきました。複数単語の検索やタイプミス検出などは、正しく機能させるためには多くの作業が必要です。ゼロから開発するのではなく、既存の検索ソリューションであるAlgoliaを使用することにしました。
Algoliaはホスト型の検索サービスであり、React、Vue、Bootstrap、Yarnなど、人気のあるオープンソースプロジェクトで急速に採用されています。その他多数。
AlgoliaがElectronプロジェクトに適している理由の一部を以下に示します。
- InstantSearch.jsは、入力中に結果を約1ミリ秒で表示します。
- タイプミス許容により、
widnow
と入力しても結果が表示されます。 - 高度なクエリ構文により、
"正確な引用符付き一致"
と-除外
が可能です。 - APIクライアントはオープンソースで、よく文書化されています。
- 分析により、ユーザーが最も検索しているもの、および検索しているが見つからないものがわかります。これにより、Electronのドキュメントを改善するための貴重な洞察が得られます。
- Algoliaはオープンソースプロジェクトで無料で利用できます。
APIドキュメント
達成したいことが分かっているが、正確な方法がわからない場合があります。Electronには750を超えるAPIメソッド、イベント、プロパティがあります。人間がすべてを覚えるのは不可能ですが、コンピューターは得意です。ElectronのJSON APIドキュメントを使用して、このすべてのデータをAlgoliaにインデックス化しました。これにより、必要なAPIを簡単に検索できます。
ウィンドウのサイズを変更しようとしていますか?resize
を検索して、必要なメソッドに直接ジャンプできます。
チュートリアル
Electronには、APIドキュメントを補完するチュートリアルのコレクションが常に増えています。これで、関連するAPIドキュメントとともに、特定のトピックに関するチュートリアルを簡単に検索できるようになりました。
セキュリティのベストプラクティスを探していますか?security
を検索してください。
npmパッケージ
npmレジストリには70万を超えるパッケージがあり、必要なパッケージを見つけるのは容易ではありません。これらのモジュールの発見を容易にするために、electron-npm-packages
を作成しました。これは、レジストリにある3400以上のモジュールのコレクションで、Electronでの使用のために特別に構築されています。
Libraries.ioのメンバーは、コード、コミュニティ、ドキュメント、使用状況などの指標を組み合わせてソフトウェアプロジェクトをスコアリングするシステムであるSourceRankを作成しました。私たちはsourceranks
モジュールを作成し、npmレジストリ内のすべてのモジュールのスコアを含め、これらのスコアを使用してパッケージの結果をソートします。
Electronの組み込みIPCモジュールに代わるものを探していますか?is:package ipc
を検索してください。
Electronアプリ
Algolia を使用したデータのインデックス作成は簡単なので、electron/appsから既存のアプリリストを追加しました。
検索結果の絞り込み
以前にGitHubのコード検索を使用したことがある場合は、extension:js
やuser:defunkt
のようなコロン区切りのキーバリューフィルタをご存知かもしれません。このフィルタリング手法は非常に強力だと考えているため、Electronの検索にis:
キーワードを追加しました。これにより、単一の種類の結果のみを表示するようにフィルタリングできます。
キーボードナビゲーション
キーボードショートカットが人気です!新しい検索は、指をキーボードから離さずに使用できます。
- /で検索入力にフォーカスします。
- escで検索入力にフォーカスし、クリアします。
- 下矢印で次の結果に移動します。
- 上矢印で前の結果、または検索入力に移動します。
- Enterで結果を開きます。
このキーボード操作を可能にするモジュールもオープンソース化しました。これはAlgolia InstantSearchで使用することを目的としていますが、さまざまな検索実装との互換性を確保するために汎用化されています。
皆様からのフィードバックをお待ちしております
新しい検索ツールに問題が発生した場合は、お知らせください!
フィードバックを送信する最善の方法は、適切なリポジトリでGitHubに問題を報告することです。
- electron/electronjs.orgはElectronのウェブサイトです。どこに問題を報告すればよいかわからない場合は、これが最適な選択肢です。
- electron/algolia-indicesは、検索可能なすべてのElectronデータがコンパイルされている場所です。
- electron/search-with-your-keyboardにより、キーボードで検索インターフェースを操作できます。
- algolia/instantsearch.jsは、入力しながら検索を可能にするブラウザ側のクライアントです。
- algolia/algoliasearch-client-javascriptは、Algoliaのサーバーにデータアップロードを行うためのNode.jsクライアントです。
謝辞
これらの新しい検索機能の構築に貢献してくださったEmily JordanとVanessa Yuen、SourceRankスコアを提供してくれたLibraries.io、そして開始を支援してくれたAlgoliaチームに特別な感謝を申し上げます。🍹