2018-04-30 12:36:53 +03:00
Electron Forge
--------------
2019-11-26 00:41:22 +03:00
[![Build Status ](https://github.com/electron-userland/electron-forge/workflows/CI/badge.svg )](https://github.com/electron-userland/electron-forge/actions?query=workflow:CI)
2021-03-10 05:28:01 +03:00
[![Discord ](https://img.shields.io/discord/745037351163527189?color=blueviolet&logo=discord )](https://discord.gg/electron)
[![npm version ](https://img.shields.io/npm/v/@electron-forge/cli )](https://npm.im/@electron-forge/cli)
2018-04-30 12:36:53 +03:00
[![license ](https://img.shields.io/github/license/electron-userland/electron-forge.svg )](https://github.com/electron-userland/electron-forge/blob/master/LICENSE)
![status ](https://img.shields.io/badge/Status-%20Ready%20for%20Awesome-red.svg )
A complete tool for building modern Electron applications.
Electron Forge unifies the existing (and well maintained) build tools for
Electron development into a simple, easy to use package so that anyone can
jump right in to Electron development.
----
## :rotating_light: :construction: **WARNING** :construction: :rotating_light:
:building_construction:
The `master` branch is a rewrite of Electron Forge that will eventually be the 6.x series. If you
2019-07-16 18:13:59 +03:00
are looking for the 5.x series (the version currently published to NPM under `electron-forge` ), please view the [5.x branch ](https://github.com/electron-userland/electron-forge/tree/5.x ).
2018-04-30 12:36:53 +03:00
----
2019-06-10 17:58:58 +03:00
[Website ](https://www.electronforge.io ) |
2018-04-30 12:36:53 +03:00
[Goals ](#project-goals ) |
2019-03-24 23:51:14 +03:00
[Docs and Usage ](#docs-and-usage ) |
2019-06-10 17:58:58 +03:00
[Configuration ](https://www.electronforge.io/configuration ) |
2018-04-30 12:36:53 +03:00
[Support ](https://github.com/electron-userland/electron-forge/blob/master/SUPPORT.md ) |
[Contributing ](https://github.com/electron-userland/electron-forge/blob/master/CONTRIBUTING.md ) |
[Changelog ](https://github.com/electron-userland/electron-forge/blob/master/CHANGELOG.md )
# Getting Started
2020-01-16 04:43:52 +03:00
**Note**: Electron Forge requires Node 10 or above, plus git installed.
2018-04-30 12:36:53 +03:00
2019-07-16 18:13:59 +03:00
If you have a more recent version of `npm` or `yarn` , you can use
2018-04-30 12:36:53 +03:00
[`npx` ](https://medium.com/@maybekatz/introducing-npx-an-npm-package-runner-55f7d4bd282b ),
or
[`yarn create` ](https://yarnpkg.com/blog/2017/05/12/introducing-yarn/ ).
```bash
2019-05-24 04:03:39 +03:00
npx create-electron-app my-new-app
2018-04-30 12:36:53 +03:00
# or
yarn create electron-app my-new-app
# then
cd my-new-app
npm start
```
2019-07-16 18:13:59 +03:00
Alternatively (less recommended):
```bash
npm install -g @electron -forge/cli
electron-forge init my-new-app
cd my-new-app
npm start
```
2018-04-30 12:36:53 +03:00
# Project Goals
1. Starting with Electron should be as simple as a single command.
2018-04-30 17:49:39 +03:00
2. Developers shouldn't have to worry about setting up build tooling,
2018-04-30 12:36:53 +03:00
native module rebuilding, etc. Everything should "just work" for them out
of the box.
3. Everything from creating the project to packaging the project for release
2018-04-30 17:49:39 +03:00
should be handled by one core dependency in a standard way while still offering
2018-04-30 12:36:53 +03:00
users maximum choice and freedom.
With these goals in mind, under the hood this project uses, among others:
* [`electron-rebuild` ](https://github.com/electron/electron-rebuild ):
Automatically recompiles native Node.js modules against the correct
Electron version.
2020-04-13 18:21:33 +03:00
* [Electron Packager ](https://github.com/electron/electron-packager ):
2018-04-30 12:36:53 +03:00
Customizes and bundles your Electron app to get it ready for distribution.
2018-04-30 17:49:39 +03:00
# Docs and Usage
2018-04-30 12:36:53 +03:00
2018-04-30 17:49:39 +03:00
For Electron Forge documentation and usage you should check out our website:
2019-06-10 17:58:58 +03:00
[electronforge.io ](https://www.electronforge.io )
2018-04-30 12:36:53 +03:00
2018-04-30 17:49:39 +03:00
# FAQ
2018-04-30 12:36:53 +03:00
2020-04-13 18:21:33 +03:00
## How do I use this with `webpack`/`babel`/`typescript`/other build tool?
2018-04-30 12:36:53 +03:00
2020-04-13 18:21:33 +03:00
By default, Electron Forge only runs vanilla (i.e., non-compiled) JavaScript, but for typescript, webpack, and other build tool support check out the [plugins ](https://www.electronforge.io/config/plugins )
2019-07-16 18:13:59 +03:00
section of our docs site. We currently have plugins for Webpack and Electron Compile, and a
[template for Webpack ](https://www.electronforge.io/templates/webpack-template ).
2018-11-17 11:04:41 +03:00
2018-04-30 17:49:39 +03:00
# Team
2018-04-30 12:36:53 +03:00
2018-05-01 07:34:02 +03:00
| < img src = "https://s.gravatar.com/avatar/1576c987b53868acf73d6ccb08110a78?s=144" width = "144" / > | < img src = "https://avatars2.githubusercontent.com/u/11417?s=460&v=4" width = "144" / > |
2018-04-30 17:49:39 +03:00
|---| --- |
2018-05-04 09:40:06 +03:00
| [Samuel Attard ](https://samuelattard.com ) | [Mark Lee ](https://github.com/malept ) |