No Description

Alexandre Lacheze 2bba11c5b0 docs: warning unicity of webRequest event listener (#13482) 6 years ago
.circleci 0efb5853d6 build: [gn] centralize GN args under build/args/*.gn 6 years ago
.github f26880db03 Update docs on semantic requirements for #13359 (#13365) 6 years ago
atom 4bcf0e34c5 fix: window.setVibrancy parameter passing (#13627) 6 years ago
brightray 7ed9a88277 build: [gn] fix linking against base_static (#13810) 6 years ago
build a6bc8030ea build: [gn win] fix path names in js2asar 6 years ago
chromium_src d6af3bfcd2 chore: fix more chromium-style errors in windows code (#13487) 6 years ago
default_app c8030a0f2a feat: support chrome:// URLs in default_app (#13575) 6 years ago
docs 2bba11c5b0 docs: warning unicity of webRequest event listener (#13482) 6 years ago
docs-translations e9de194b89 update references to renamed i18n repo 7 years ago
lib 39c5c200ba fix: util.promisify(setTimeout) (#13840) 6 years ago
native_mate 91172d6387 build: [gn] move native_mate build config to native_mate dir (#13706) 6 years ago
npm cda13e5e79 feat: upgrade electron-download to 4.x 7 years ago
script 2440d03595 Merge pull request #13739 from electron/fix-rebuild-native-modules 6 years ago
spec 69f6bd921b chore(tests): allow usage of deprecated APIs in tests (#13659) 6 years ago
tools a6bc8030ea build: [gn win] fix path names in js2asar 6 years ago
vendor acbabc7635 build: Bump libcc to latest (#13821) 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 4f9b8d5d5a clarify purpose of .env.example 6 years ago
.gitignore 04855bc499 Merge pull request #12921 from electron/commit-package-lock 7 years ago
.gitmodules daa64e21f6 rename back to expected values 6 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
BUILD.gn 38ca2b342b build: [gn] fix resource path conflict on mac (#13824) 6 years ago
CODE_OF_CONDUCT.md 1f8de33e75 Change Contact Emails (#12278) 7 years ago
CONTRIBUTING.md e3dfffb77b add docs/development/README.md (#12373) 7 years ago
DEPS 9f26dfc23e build: [gn] win and linux depend on :packed_resources 6 years ago
Dockerfile 67558d65a6 Use Node.js 10 for CI builds 6 years ago
Dockerfile.arm64 5f48f91d94 Newer CI images (#12188) 7 years ago
Dockerfile.arm64v8 ed1c84445c Update CI to use Node 8 7 years ago
Dockerfile.armv7 ed1c84445c Update CI to use Node 8 7 years ago
Dockerfile.circleci 67558d65a6 Use Node.js 10 for CI builds 6 years ago
LICENSE 46121da765 Update license year 7 years ago
README.md 5d3692c16f Update installation instructions 7 years ago
SECURITY.md 1f8de33e75 Change Contact Emails (#12278) 7 years ago
appveyor.yml 1c70a1cccd Make sure artifacts are properly saved for nightly release builds 6 years ago
common.gypi 951aa83bdf Disable node options in node config (#13311) 6 years ago
electron.gyp adaa32003d refactor: DwmGetColorizationColor does not have to be dynamically resolved 6 years ago
electron_paks.gni 27e6805889 build: [gn] pack ui_strings in locales (#13827) 6 years ago
features.gypi 5e2406081e build: move pepper flash behind feature flag 6 years ago
filenames.gypi 3094f62f0b fix: use webContentsId with contextId together (#13749) 6 years ago
package-lock.json 2c255680a9 new release notes generator 6 years ago
package.json 2c255680a9 new release notes generator 6 years ago
toolchain.gypi 8f00240c73 chrome style plugin: remove check-auto-raw-pointer option 6 years ago
vsts.yml 1c70a1cccd Make sure artifacts are properly saved for nightly release builds 6 years ago

README.md

Electron Logo

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

:memo: Available Translations: 🇨🇳 🇹🇼 🇧🇷 🇪🇸 🇰🇷 🇯🇵 🇷🇺 🇫🇷 🇹🇭 🇳🇱 🇹🇷 🇮🇩 🇺🇦 🇨🇿 🇮🇹. View these docs in other languages at 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 for Electron prior to version 2, as it does not follow semantic versioning. As of version 2.0.0, Electron follows semver, so you don't need --save-exact flag. 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/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.