MENU
Language

​Electronとは?JavaScript、HTML、CSSを用いてクロスプラットフォームのデスクトップアプリケーションを開発できるオープンソースのフレームワーク

Electronは、JavaScript、HTML、CSSを用いてクロスプラットフォームのデスクトップアプリケーションを開発できるオープンソースのフレームワークです。 GitHubによって開発され、現在はOpenJS Foundationによって管理されています。

目次

Electronの特徴

1. クロスプラットフォーム対応

Electronは、Windows、macOS、Linuxの主要なオペレーティングシステムで動作するアプリケーションを、単一のコードベースで開発できます。 これにより、各プラットフォームごとに個別の開発を行う必要がなくなります。 ​

2. ChromiumとNode.jsの統合

Electronは、Chromium(Googleが主導して開発しているオープンソースブラウザでGoogle Chromeのベースとなっているもの)とNode.jsを組み込んでおり、ウェブ技術とネイティブ機能の両方を活用できます。 これにより、ウェブ開発者がデスクトップアプリケーションを容易に構築できます。 ​

3. 豊富なAPIとツール

Electronは、ファイルシステムへのアクセス、通知、メニューのカスタマイズなど、デスクトップアプリケーションに必要な多くのAPIを提供しています。 また、Electron ForgeやElectron Fiddleなどのツールを利用することで、開発、パッケージング、デバッグが容易になります。

開発の始め方

Node.jsのインストール: ElectronはNode.js上で動作するため、事前にNode.jsをインストールする必要があります。​

Electronのインストール: プロジェクトディレクトリで以下のコマンドを実行します。​

npm install electron --save-dev
パーツ意味
npmNode.jsのパッケージ管理ツール(Node Package Manager
install新しいパッケージをインストールする命令
electronインストールするパッケージ名(ここではElectronというフレームワーク)
--save-devインストールしたパッケージを、開発用依存(devDependencies) に記録する

なぜ --save-dev をつけるのか?
・Electronはアプリ開発中だけ必要なツールだからです。
・実際にElectronで作ったアプリを配布するとき、ユーザーがElectron本体を意識する必要はありません。
・そのため本番環境(production)では不要 → 開発専用(devDependencies) とします。

もし --save-dev をつけなかった場合
dependencies(本番環境用)に記録されてしまいます。
・これはアプリの配布パッケージサイズが無駄に大きくなる原因になるので、開発ツールはdevDependenciesに入れます。

アプリケーションの作成: main.js(メインプロセス)とindex.html(レンダラープロセス)を作成し、基本的なアプリケーションを構築します。

Electronの起動: 以下のコマンドでアプリケーションを起動します。​

npx electron

詳細なチュートリアルやサンプルコードは、公式ドキュメントの「はじめに」セクションを参照してください。 ​Electron

実際の利用例

Electronは、多くの著名なアプリケーションで採用されています。​

  • Visual Studio Code: Microsoftが提供するソースコードエディタ。​
  • Slack: チーム向けのコミュニケーションツール。​
  • Figma: デザインとプロトタイピングのためのツール。​
  • Discord: ゲーマー向けのボイスチャットアプリケーション。​

これらのアプリケーションは、Electronを活用することで、ウェブ技術をベースにしたデスクトップアプリケーションを提供しています。 ​

Electronのサンプルを動かしてみましょう

Electron Fiddleでサンプルアプリを確認する方法はこちらで紹介していますので合わせてご確認ください。

ソースコード

electronソースコード
https://github.com/electron/electron
ライセンス:MIT ライセンス

公式リソース

Electron公式サイト
https://www.electronjs.org/

公式ドキュメント(日本語)
https://www.electronjs.org/ja/docs/latest/

Electron Forgeドキュメント
https://www.electronjs.org/ja/docs/latest/tutorial/forge-overview/

Electron Fiddle
https://www.electronjs.org/fiddle

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

AIアーティスト | エンジニア | ライター | 最新のAI技術やトレンド、注目のモデル解説、そして実践に役立つ豊富なリソースまで、幅広い内容を記事にしています。フォローしてねヾ(^^)ノ

コメント

コメントする

目次