No Description

John Kleinschmidt 5f3bedd1e0 ci: don't run gn debug build on older branches (#14584) 6 years ago
.circleci 3ab99663eb Merge branch '2-0-x-bp-fix--tray-setcontextmenu-crash-1530308984992' of git://github.com/trop-bot/electron into trop-bot-2-0-x-bp-fix--tray-setcontextmenu-crash-1530308984992 6 years ago
.github 35faab89a4 add typing cat to first PR comment (#11964) 7 years ago
atom 670a875792 Bump v2.0.9 6 years ago
brightray 8edd18be90 fix: issue 10962, crash when open devtool (#13808) 6 years ago
chromium_src 9f78ef0179 Merge pull request #11595 from YurySolovyov/fileicon-task-scheduler 7 years ago
default_app 0f54e56389 Replace default_app icon 7 years ago
docs faf82245dc Fix documentation tyop (#14477) 6 years ago
docs-translations e25a46378b Merge https://github.com/kstar0714/electron 7 years ago
lib 760c2327b4 fix: do not bubble up resize event from webview (#14272) 6 years ago
npm 85da731867 fix: support installing nightlies on <= 2.0.x (#14224) 6 years ago
script 066eeb5b5f chore: add release-artifact-cleanup script (#14448) 6 years ago
spec 7ed6e2b909 fix: don't crash on tray.setContextMenu(null) (#14330) 6 years ago
tools 96f800552c Fix deprecated API in tools/dump-version-info.js 7 years ago
vendor 3bc9ae7f5b deps: update node for two backports (#14298) 6 years ago
.clang-format a846088eac Add clang-format config file. 8 years ago
.dockerignore 06481b5630 Add testing for arm, arm64 and ia32 linux builds 7 years ago
.env.example 74d90fbb33 chore: backport release script updates to 2-0-x (#14191) 6 years ago
.gitignore c6c49b9e4b Add native arm/arm64 mksnapshot for 2-0-x (#12524) 7 years ago
.gitmodules 4dab62dfcf Move brightray submodules to root vendor 8 years ago
.node-version 8ebab10cb0 Bump node version number 7 years ago
.remarkrc 2441d51093 add remark lint to ensure fenced codeblocks are formatted properly. 7 years ago
.travis.yml 136857952e Add arm64 task in travis ci 7 years ago
CODE_OF_CONDUCT.md 018b676efd Change Contact Emails 7 years ago
CONTRIBUTING.md 018b676efd Change Contact Emails 7 years ago
Dockerfile b1dd013425 Upgrade to node 8 7 years ago
Dockerfile.arm64 176abdbd80 Linux named notifications - 2-0-0 (#12229) 7 years ago
Dockerfile.arm64v8 b1dd013425 Upgrade to node 8 7 years ago
Dockerfile.armv7 c80021924e Update CI to use Node 8 7 years ago
Dockerfile.circleci b1dd013425 Upgrade to node 8 7 years ago
Jenkinsfile e7edc6f24f Add 1 hour timeout 7 years ago
Jenkinsfile.arm64 c80021924e Update CI to use Node 8 7 years ago
LICENSE 46121da765 Update license year 7 years ago
README.md 4eedd1455d Manually backport Support Policy docs from master 7 years ago
SECURITY.md 018b676efd Change Contact Emails 7 years ago
appveyor.yml 5f3bedd1e0 ci: don't run gn debug build on older branches (#14584) 6 years ago
common.gypi c6ea424858 Disable node options in node config (#13324) 6 years ago
electron.gyp 670a875792 Bump v2.0.9 6 years ago
features.gypi 868e792572 Make run-as-node mode optional (#11701) 7 years ago
filenames.gypi d6d2a46821 REVIEW: create proxy helper per browser context 6 years ago
package.json 670a875792 Bump v2.0.9 6 years ago
toolchain.gypi 9c167b63f2 Backport (2-0-x) - Add sccache option to bootstrap (#12753) 7 years ago
vsts.yml 088dc70dae chore: disable tests on release builds, this is already done on master/3-0-x (#14206) 6 years ago

README.md

Electron Logo

CircleCI Build Status AppVeyor Build Status Jenkins Build Status devDependency Status Join the Electron Community on Slack

:memo: Available Translations: 🇨🇳 🇹🇼 🇧🇷 🇪🇸 🇰🇷 🇯🇵 🇷🇺 🇫🇷 🇹🇭 🇳🇱 🇹🇷 🇮🇩 🇺🇦 🇨🇿 🇮🇹. View these docs in other languages at electron/electron-i18n.

The Electron framework lets you write cross-platform desktop applications using JavaScript, HTML and CSS. It is based on Node.js and Chromium and is used by the Atom editor and many other apps.

Follow @ElectronJS on Twitter for important announcements.

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to [email protected].

Installation

To install prebuilt Electron binaries, use npm. The preferred method is to install Electron as a development dependency in your app:

npm install electron --save-dev --save-exact

The --save-exact flag is recommended as Electron does not follow semantic versioning. For info on how to manage Electron versions in your apps, see Electron versioning.

For more installation options and troubleshooting tips, see installation.

Quick start

Clone and run the electron/electron-quick-start repository to see a minimal Electron app in action:

git clone https://github.com/electron/electron-quick-start
cd electron-quick-start
npm install
npm start

Resources for learning Electron

Programmatic usage

Most people use Electron from the command line, but if you require electron inside your Node app (not your Electron app) it will return the file path to the binary. Use this to spawn Electron from Node scripts:

const electron = require('electron')
const proc = require('child_process')

// will print something similar to /Users/maf/.../Electron
console.log(electron)

// spawn Electron
const child = proc.spawn(electron)

Mirrors

Documentation Translations

Find documentation translations in electron/electron-i18n.

Community

Info on reporting bugs, getting help, finding third-party tools and sample apps, and more can be found in the support document.

License

MIT

When using the Electron or other GitHub logos, be sure to follow the GitHub logo guidelines.