概要
Electronとは、JavaScriptでデスクトップアプリケーションが作成できるツールです。
MITライセンスなので無料で使える上に商用利用も可能です。
最近ではAtomやSlackのアプリもElectronで作られたとのこと。
今かなりノっているツールの1つです。
以下、簡単な特徴。
MITライセンスなので無料で使える上に商用利用も可能です。
最近ではAtomやSlackのアプリもElectronで作られたとのこと。
今かなりノっているツールの1つです。
以下、簡単な特徴。
- Node.js + HTML + CSS という、WEBの技術でアプリが作れる。
- Chromiumブラウザ(Chromeのオープンソース版)を内蔵しているので、普段の書き味と変わらない
- これ1つで Windows, Mac, Linux 向けのアプリが作れる
- 超簡単
ここではElectronのインストールからアプリの配布までを紹介します。
以下、「Hello World」を出すだけのアプリですが、ゼロからはじめて30分でここまで出来ます。
以下、「Hello World」を出すだけのアプリですが、ゼロからはじめて30分でここまで出来ます。
インストール
まずは必要なものをインストール。
nodeのインストール
Windowsの場合は https://nodejs.org/download/からmsiをダウンロードしてインストール。
Macの場合は以下のコマンドでインストール。
Macの場合は以下のコマンドでインストール。
Electronのインストール
nodeをインストールしたら次はElectronのインストールです。
Electronでアプリケーションを作成する
プロジェクトの作成
では早速プロジェクトを作りましょう。
アプリケーション用のディレクトリを作成し、その下で npm init します。
いろいろ聞かれるので適当に入力。
アプリケーションのエントリポイントはデフォルトで「index.js」ですが、ElectronのQuick Startは「main.js」を読みにいくので、「main.js」にしておきます。
アプリケーション用のディレクトリを作成し、その下で npm init します。
いろいろ聞かれるので適当に入力。
アプリケーションのエントリポイントはデフォルトで「index.js」ですが、ElectronのQuick Startは「main.js」を読みにいくので、「main.js」にしておきます。
入力内容を元に以下のような package.json が出来上がります。
これで準備は完了です。
Hello Worldを出力
「Hello World」を出力してみましょう。
まずはmain.jsにHTMLを表示するだけの記述を書きます。
まずはmain.jsにHTMLを表示するだけの記述を書きます。
続いてindex.htmlに「Hello World」を書いてみます。
さて、アプリケーションをQuick Startさせてみましょう。
以下のコマンドを打ちます。
以下のコマンドを打ちます。
ウィンドウが立ち上がって「Hello World」と表示されたかと思います。
とても簡単ですね。
エラーが出る場合は、jsのエラーか何かでしょう。メッセージを読めばわかると思います。
ちなみに、終了するにはアプリケーションのウィンドウを閉じるか、Control+Cを入力します。
とても簡単ですね。
エラーが出る場合は、jsのエラーか何かでしょう。メッセージを読めばわかると思います。
ちなみに、終了するにはアプリケーションのウィンドウを閉じるか、Control+Cを入力します。
アプリケーションをアーカイブ化する
さて、今度は作成したアプリケーションをアーカイブ化してみましょう。
Electronで作成したアプリケーションをアーカイブ化するにはasarというツールを使います。
まずはnpmインストールしましょう。
Electronで作成したアプリケーションをアーカイブ化するにはasarというツールを使います。
まずはnpmインストールしましょう。
さて、早速アーカイブ化してみましょう。
asarコマンドを実行すると、tarのような単一ファイルが作られます。
asarコマンドを実行すると、tarのような単一ファイルが作られます。
アーカイブ化したファイルを実行してみましょう。
先ほどと同じようにウィンドウが立ち上がって「Hello World」が確認できたと思います。
アプリケーションを配布する
asarでアーカイブ化したファイルは、Electronをインストールしているユーザにしか起動できません。
そのため、誰でも実行可能にするためにはElectronの実行環境と一緒にパッケージングしてあげる必要があります。
今回はその辺りを自動でやってくれるelectron-packagerというツールを使います。
まずはインストール。
そのため、誰でも実行可能にするためにはElectronの実行環境と一緒にパッケージングしてあげる必要があります。
今回はその辺りを自動でやってくれるelectron-packagerというツールを使います。
まずはインストール。
そしてパッケージングします。
例えばMacとWindows向けにパッケージングする場合は以下。
例えばMacとWindows向けにパッケージングする場合は以下。
簡単に引数の説明もしておきます。
- platform ・・・ all, linux, win32, darwin のいずれかを選択。複数入れる場合はカンマ区切りで。
- arch ・・・ all, ia32, x64 のいずれかを選択。
- version ・・・ Electronのバージョンを指定します。(0.36.1はElectronの最新バージョンです ※2015/12/23現在)
先ほどのコマンドを実行してしばらくすると「sample-darwin-x64」「sample-win32-x64」という2つのディレクトリが出来ています。
試しに「sample-darwin-x64」ディレクトリの中身を見てみましょう。
試しに「sample-darwin-x64」ディレクトリの中身を見てみましょう。
appファイルが出来ていますね。ダブルクリックすると実行されます。
これで誰にでも配布可能なアプリケーションが出来ました。
これで誰にでも配布可能なアプリケーションが出来ました。
Electronを触った感想
とにかく簡単です。ほぼWEBの知識だけでデスクトップアプリが作れてしまうのがとても嬉しいです。
次回はアプリの見栄えをもう少し整えてみようと思います。
次回はアプリの見栄えをもう少し整えてみようと思います。
- この記事は以下の記事からリンクされています 過去の12件を表示する
- 今後イケそうなデスクトップGUIフレームワークからリンク
- electron+baeblのテンプレートを作ってみた その1からリンク
- Electronでアプリ内部にWebサーバーを立てるからリンク
- 初めてのElectronからリンク
- ElectronでGLSL用テキストエディタを作ってみた。その1からリンク
ありがとうございます。
Windowsでも開発してみようと試みたのですが、起動の段階 electron sample でエラーになってしまいます、、、。
なぜか electron main.js とすると問題なく起動します、、、困りました。
一応、package.jsonの"main"も"main.js"になっていますよね?
ElectronのQuick Startをする場合、でお間違いないですか。
Quick Startは
ElectronのQuick Startをする場合、でお間違いないですか。
Quick Startは
と指定する必要があるので、もし自分の位置がプロジェクトディレクトリ内でしたら
と指定すれば上手くいきませんか?
もしくは、1階層上で
もしくは、1階層上で
electron sample
と実行したら上手くいきませんか?
非常に有用な記事で参考にさせていただきました。
ただ、クイックスタートでelectron sample/して失敗されてる方が多いようなので僭越ながら補足を。
「プロジェクトの作成」のステップで cd sample を実行してカレントディレクトリを移動しているので、そのまま続きで作業を進めてelectron sample/とすると動きません。
2015/07/21にnyanchuさんが書かれている内容と被るのですが、一旦 cd ../ してカレントディレクトリをsampleより一つ上の階層に移動してからelectron sample/ とするか、移動しない場合は electron ./ とかで起動できるかと思います。
0 件のコメント:
コメントを投稿