electron/docs
Samuel Attard bc527f6b51
refactor: bundle the browser and renderer process electron code (#18553)
* refactor: bundle the browser and renderer process electron code

* Bundles browser/init and renderer/init
  * Improves load performance of main process by ~40%
  * Improves load performance of renderer process by ~30%
* Prevents users from importing our "requiring" our internal logic such
as ipc-main-internal.  This makes those message buses safer as they are
less accessible, there is still some more work to be done though to lock
down those buses completely.
* The electron.asar file now only contains 2 files, as a future
improvement maybe we can use atom_natives to ship these two files
embedded in the binary
* This also removes our dependency on browserify which had some strange
edge cases that caused us to have to hack around require-order and
stopped us using certain ES6/7 features we should have been able to use
(async / await in some files in the sandboxed renderer init script)

TLDR: Things are faster and better :)

* fix: I really do not want to talk about it

* chore: add performance improvements from debugging

* fix: resolve the provided path so webpack thinks it is absolute

* chore: fixup per PR review

* fix: use webpacks ProvidePlugin to keep global, process and Buffer alive after deletion from global scope for use in internal code

* fix: bundle worker/init as well to make node-in-workers work

* chore: update wording as per feedback

* chore: make the timers hack work when yarn is not used
2019-06-02 13:03:03 -07:00
..
api refactor: bundle the browser and renderer process electron code (#18553) 2019-06-02 13:03:03 -07:00
development build: linux needs java on GN (#18211) 2019-05-08 15:28:55 -07:00
images docs: add missing image (#18235) 2019-05-13 16:55:41 -04:00
tutorial correct reference chrome://plugins to components (#18237) 2019-05-22 15:58:53 -07:00
faq.md docs: add missing image (#18235) 2019-05-13 16:55:41 -04:00
glossary.md refactor: eliminate brightray (#15240) 2018-10-24 12:49:10 +02:00
README.md fix: revert to previous documentation folder structure (#18127) 2019-05-02 15:17:17 -07:00
styleguide.md feat: promisify session cache methods (#17185) 2019-03-08 14:42:03 -08:00

Official Guides

Please make sure that you use the documents that match your Electron version. The version number should be a part of the page URL. If it's not, you are probably using the documentation of a development branch which may contain API changes that are not compatible with your Electron version. To view older versions of the documentation, you can browse by tag on GitHub by opening the "Switch branches/tags" dropdown and selecting the tag that matches your version.

FAQ

There are questions that are asked quite often. Check this out before creating an issue:

Guides and Tutorials

Detailed Tutorials

These individual tutorials expand on topics discussed in the guide above.


API References

Custom DOM Elements:

Modules for the Main Process:

Modules for the Renderer Process (Web Page):

Modules for Both Processes:

Development

See development/README.md