# atom/electron

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/atom-electron).**

121,778 stars · 17,276 forks · C++ · MIT

## Links

- GitHub: https://github.com/atom/electron
- Homepage: https://electronjs.org
- awesome-repositories: https://awesome-repositories.com/repository/atom-electron.md

## Description

Electron is a framework for building native desktop applications using JavaScript, HTML, and CSS. It functions as a cross-platform desktop runtime that combines the Chromium engine with Node.js to enable web technologies to run as standalone applications on Windows, macOS, and Linux.

The project serves as a desktop integration layer that allows web-based user interfaces to access low-level operating system APIs. By bridging the Chromium rendering engine with a Node.js environment, it enables a single codebase to be deployed as a native executable across different desktop operating systems.

The framework provides native OS API access and supports multi-platform software distribution. It manages the integration of web technology into desktop environments by connecting user interfaces to system-level functions.

## Tags

### Web Development

- [Cross-Platform Desktop Frameworks](https://awesome-repositories.com/f/web-development/cross-platform-desktop-frameworks.md) — Building native applications for Windows, macOS, and Linux using web technologies like JavaScript, HTML, and CSS.
- [Desktop Application Frameworks](https://awesome-repositories.com/f/web-development/desktop-application-frameworks.md) — Provides a comprehensive framework for building cross-platform desktop applications using web technologies. ([source](https://github.com/atom/electron#readme))
- [Desktop Web Wrappers](https://awesome-repositories.com/f/web-development/desktop-web-wrappers.md) — Wraps web applications into native desktop shells to provide a standalone executable experience.

### Operating Systems & Systems Programming

- [Chromium-Based Desktop Shells](https://awesome-repositories.com/f/operating-systems-systems-programming/desktop-environment-frameworks/desktop-environment-components/desktop-application-frameworks/chromium-based-desktop-shells.md) — Uses a Chromium-based shell to host web-based engines within a local desktop application container.
- [Native API Bridges](https://awesome-repositories.com/f/operating-systems-systems-programming/kernel-core-internals/system-programming-primitives/system-abstractions/native-interoperability-bindings/native-system-integrations/native-api-bridges.md) — Provides a native bridge that exposes system-level C++ capabilities to the JavaScript layer.
- [Cross-Platform Desktop Runtimes](https://awesome-repositories.com/f/operating-systems-systems-programming/platform-development-integration/application-runtimes/cross-platform-desktop-runtimes.md) — Provides a runtime environment that enables web technologies to function as standalone applications across desktop platforms.

### Programming Languages & Runtimes

- [Node.js Desktop Integration](https://awesome-repositories.com/f/programming-languages-runtimes/node-js-desktop-integration.md) — Integrates Node.js system APIs directly into the desktop browser environment for OS and file system access.

### Software Engineering & Architecture

- [Multi-Process Architectures](https://awesome-repositories.com/f/software-engineering-architecture/multi-process-architectures.md) — Employs a multi-process architecture to isolate the main system process from the rendering processes for stability.
- [Process Separation](https://awesome-repositories.com/f/software-engineering-architecture/software-architecture/architectural-patterns/backend-enterprise-systems/backend-and-service-orchestration/main-process-management/process-separation.md) — Divides application logic into distinct system-level main processes and user-interface renderer processes.
- [Inter-Process Communication](https://awesome-repositories.com/f/software-engineering-architecture/inter-process-communication.md) — Implements an architectural message-passing system for synchronization between the main and renderer processes.

### DevOps & Infrastructure

- [Cross-Platform Binary Distribution](https://awesome-repositories.com/f/devops-infrastructure/cross-platform-binary-distribution.md) — Facilitates the deployment of a single codebase as a native executable across different desktop operating systems.

### Part of an Awesome List

- [Hybrid Desktop Frameworks](https://awesome-repositories.com/f/awesome-lists/devtools/hybrid-desktop-frameworks.md) — Builds cross-platform desktop apps with web technologies.
- [Desktop Applications](https://awesome-repositories.com/f/awesome-lists/productivity/desktop-applications.md) — Build cross-platform desktop apps with web technologies.
