electron/npm/README.md

87 lines
3.7 KiB
Markdown
Raw Normal View History

2015-04-17 18:19:50 +00:00
# electron-prebuilt
2014-10-20 04:17:38 +00:00
2016-02-27 20:29:07 +00:00
[![build status](http://img.shields.io/travis/electron-userland/electron-prebuilt.svg?style=flat)](http://travis-ci.org/electron-userland/electron-prebuilt)
2014-10-20 05:39:23 +00:00
2016-03-29 07:41:39 +00:00
[![badge](https://nodei.co/npm/electron-prebuilt.png?downloads=true)](https://www.npmjs.com/package/electron-prebuilt)
2014-10-20 05:39:17 +00:00
2015-08-22 11:14:26 +00:00
Install [electron](https://github.com/atom/electron) prebuilt binaries for command-line use using npm. This module helps you easily install the `electron` command for use on the command line without having to compile anything.
2014-10-20 04:36:12 +00:00
2015-07-29 22:39:15 +00:00
Electron is a JavaScript runtime that bundles Node.js and Chromium. You use it similar to the `node` command on the command line for executing JavaScript programs. For more info you can read [this intro blog post](http://maxogden.com/electron-fundamentals.html) or dive into the [Electron documentation](https://github.com/atom/electron/tree/master/docs)
2014-10-20 04:36:12 +00:00
## Installation
2015-04-17 18:19:50 +00:00
Download and install the latest build of electron for your OS and add it to your projects `package.json` as a `devDependency`:
2015-03-26 00:56:46 +00:00
```
2015-04-17 18:19:50 +00:00
npm install electron-prebuilt --save-dev
2015-03-26 00:56:46 +00:00
```
2015-04-17 18:19:50 +00:00
This is the preferred way to use electron, as it doesn't require users to install electron globally.
2015-03-26 00:56:46 +00:00
You can also use the `-g` flag (global) to symlink it into your PATH:
2014-10-20 04:17:38 +00:00
```
2015-04-17 18:19:50 +00:00
npm install -g electron-prebuilt
2014-10-20 04:36:12 +00:00
```
If that command fails with an `EACCESS` error you may have to run it again with `sudo`:
```
2015-04-17 18:19:50 +00:00
sudo npm install -g electron-prebuilt
2014-10-20 04:36:12 +00:00
```
2015-04-17 18:19:50 +00:00
Now you can just run `electron` to run electron:
2014-10-20 04:36:12 +00:00
```
2015-04-17 18:19:50 +00:00
electron
2014-10-20 04:36:12 +00:00
```
2015-06-18 03:52:37 +00:00
If you need to use an HTTP proxy you can [set these environment variables](https://github.com/request/request/tree/f0c4ec061141051988d1216c24936ad2e7d5c45d#controlling-proxy-behaviour-using-environment-variables)
If you want to change the architecture that is downloaded (e.g., `ia32` on an `x64` machine), you can use the `--arch` flag with npm install or set the `npm_config_arch` environment variable:
```
npm install --arch=ia32 electron-prebuilt
```
2015-08-22 11:14:26 +00:00
## About
Works on Mac, Windows and Linux OSes that Electron supports (e.g. Electron [does not support Windows XP](https://github.com/atom/electron/issues/691)).
The version numbers of this module match the version number of the [offical Electron releases](https://github.com/atom/electron/releases), which do not follow [semantic versioning](http://semver.org/).
This module is automatically released whenever a new version of Electron is released thanks to [electron-prebuilt-updater](https://github.com/johnmuhl/electron-prebuilt-updater) written by [John Muhl](https://github.com/johnmuhl/).
2014-10-20 04:36:12 +00:00
## Usage
2015-04-17 18:19:50 +00:00
First you have to [write an electron application](https://github.com/atom/electron/blob/master/docs/tutorial/quick-start.md)
2014-10-20 04:36:12 +00:00
Then you can run your app using:
```
2015-04-17 18:19:50 +00:00
electron your-app/
2014-10-20 04:36:12 +00:00
```
2014-10-20 07:16:35 +00:00
2015-08-22 11:14:26 +00:00
## Related modules
2016-02-27 20:52:39 +00:00
- [electron-packager](https://github.com/electron-userland/electron-packager) - package and distribute your electron app in OS executables (.app, .exe etc)
2015-08-22 11:14:26 +00:00
- [electron-builder](https://github.com/loopline-systems/electron-builder) - create installers for Windows and OS X. It's built to work together with electron-packager
- [menubar](https://github.com/maxogden/menubar) - high level way to create menubar desktop applications with electron
Find more at the [awesome-electron](https://github.com/sindresorhus/awesome-electron) list
2014-10-20 07:16:35 +00:00
## Programmatic usage
2015-07-29 22:39:15 +00:00
Most people use this from the command line, but if you require `electron-prebuilt` inside your node app it will return the file path to the binary.
Use this to spawn electron from node scripts.
2014-10-20 07:16:35 +00:00
``` js
2015-04-17 18:19:50 +00:00
var electron = require('electron-prebuilt')
2014-10-20 07:16:35 +00:00
var proc = require('child_process')
2015-04-17 18:19:50 +00:00
// will something similar to print /Users/maf/.../Electron
console.log(electron)
2014-10-20 07:16:35 +00:00
2015-04-17 18:19:50 +00:00
// spawn electron
var child = proc.spawn(electron)
2015-03-26 00:56:46 +00:00
```