Awesome Electron
Useful resources for creating apps with Electron
You might also like awesome-nodejs.
Contents
Apps
Made with Electron.
Open Source
Featured
- Beaker - Browser with peer-to-peer web protocols.
- Hyper - Terminal.
- WebTorrent - Streaming torrent client.
- Kap - Screen recorder with GIF support.
- Min - Minimal web browser.
- Mancy - JavaScript REPL.
- SpaceRadar - Interactive disk space and memory visualization.
- Nocturn - Twitter client.
- Mojibar - Emoji searcher in your menubar.
- Playback - Video player.
- Upterm - Terminal.
- Atom - Code editor.
- Visual Studio Code - Cross-platform IDE.
- Brave - Privacy-focused web browser.
Other
- Git-it - Teaches you Git and GitHub.
- Caprine - Unofficial Facebook Messenger app.
- Simplenote - Note keeper.
- nuTorrent - BitTorrent client.
- Abricotine - Markdown editor with inline preview.
- Medis - Redis database management.
- Kakapo - Ambient sound mixer for relaxation or productivity.
- SmartMirror - Voice controlled smart mirror.
- Koko - IRC client.
- KeeWeb - Unofficial KeePass app.
- Gitify - GitHub notifications in your menubar.
- Friends - P2P chat.
- Cumulus - SoundCloud player in your menubar.
- Kitematic - Docker container management.
- FatFileFinder - Find large files on your machine.
- ScreenCat - Screen sharing & remote collaboration.
- Gulp - Run Gulp tasks from your menubar.
- Mapbox Studio - Map designer.
- LevelUI - LevelDB management.
- Kart - Front-end for RetroArch.
- Vmd - Preview Markdown files.
- Kyoku - Displays current iTunes song.
- GReader - Collect and read offline readme files of GitHub repos.
- Leanote - Cloud notepad.
- Snapper - Screen capturing & recording for Android devices.
- Imagemin - Minify images.
- We Build SG - Upcoming events & recently updated repos from webuild.sg.
- Piglet - Run Grunt tasks from your menubar.
- Yoda - Browse and download YouTube videos.
- Loop Drop - MIDI looper and synth for live electronic music performances.
- Toby - YouTube player.
- Kaku - Music player.
- Yeoman - Scaffold projects using Yeoman.
- Markn - Markdown viewer.
- Shiba - Live Markdown preview with linting.
- Yays - YouTube music player in your menubar.
- TimoFM - DoubanFM music player.
- Monu - Process monitoring.
- Tèsèvè - Static webserver.
- DevDocs - Unofficial DevDocs.io app.
- Trendy - Trending GitHub repos in your menubar.
- google-music-electron - Unofficial Google music app.
- Pomodoro - Timer based on the Pomodoro Technique.
- Sia-UI - Decentralized file storage system based on cryptocurrency technology.
- MarkRight - GitHub flavored Markdown editor with live preview.
- Mongotron - MongoDB management tool.
- Colonizers - "Catan" inspired board game.
- Eintopf - Manage development projects with Docker.
- WhatsDesktop - Unofficial WhatsApp app.
- Sqlectron - SQL client.
- docker-indicator - Unofficial Docker menubar app.
- Light Table - Code editor with instant feedback.
- Tubehead - YouTube music player in your menubar.
- Google Play Music Desktop Player - Unofficial Google Play Music app.
- Chrome DevTools - Chrome DevTools packaged as an app.
- Yeobara - Meetup check-in with beacon.
- Proton - Markdown editor with live preview.
- James - HTTP proxy to view and intercept browser requests.
- DTCP - Twitter client.
- Inbox - Unofficial Google Inbox app.
- alienbox - Reddit inbox & notifier in your menubar.
- tweet-rec - Tweet recording player.
- Snippet Bar - Copy-paste & re-use text snippets in your menubar.
- Electronic WeChat - Unofficial WeChat app.
- dida - Add tasks to TickTick (滴答清单).
- FromScratch - Autosaving scratchpad.
- Hawkpass - Password generator.
- Gokotta - Music player.
- Shake - Japanese Earthquake Early Warning Notifier.
- Fog - Unofficial Overcast podcast app.
- Wmail - Unofficial Gmail & Google Inbox app.
- Boostnote - Markdown note & code snippet app for developers.
- Before Dawn - Screensaver tool.
- Active Collab - Unofficial Active Collab app.
- Hain - Launcher for Windows.
- Catify - Utility for Spotify.
- Minira - JIRA issues in your menubar.
- Ansel - Image organizer.
- Build Checker App - Check CI-server build statuses.
- Backer Timetracker - Tracks your time.
- Ghost - Professional publishing platform.
- Mattermost - Mattermost client.
- PupaFM - DoubanFM music player.
- MediumDesk - Unofficial Medium app.
- Lightgallery - Image viewer.
- Crypter - Secure encryption client.
- YakYak - Unofficial Google Hangouts app.
- Museeks - Music player.
- VOX - Unofficial VOX music player.
- Sabaki - Go/Baduk/Weiqi board.
- Marky - Markdown editor.
- Deco - React Native IDE.
- Toshocat - Anime/Manga Progress Tracker.
- iStats - CPU and memory stats on your menubar.
- Wire - Messenger and calling app.
- Ramme - Unofficial Instagram app.
- Moonview - Ambient notepad.
- Temps - Weather forecast in your menubar.
- DBGlass - PostgreSQL client.
- Slide Beacon - Physical web beacon broadcast.
- Rambox - Chat and email app that combines multiple services like Discord, Hangouts, Gmail and Outlook.
- Extraterm - Terminal.
- Materialette - Material design color palette in your menubar.
- Dext - Launcher.
- PB for Desktop - Pushbullet client.
- GroupMe - Unofficial GroupMe app.
- ndm - npm desktop manager.
- GIFBar - Search GIFs in your menubar.
- Stacer - Ubuntu system optimizer.
- Zazu - Launcher.
- Inpad - Notes app with GitHub-flavored Markdown.
- Cerebro - Launcher with inline previews.
- Desktop Dimmer - Control the brightness of any display.
- LosslessCut - Lossless video trimming & cutting.
- Wexond - Web browser with material UI and extensions API.
- Buka - E-book management.
- Insomnia - Create and manage HTTP requests.
- Tusk - Unofficial Evernote app.
- ProtonMail Desktop - Unofficial ProtonMail app.
- Comma Chameleon - CSV editor.
- Buttercup Desktop - Password manager.
- Mailspring - Extensible email client. (Fork of Nylas Mail)
- Manta - Invoicing for freelancers with beautiful and customizable templates.
- Headset - Discover, collect, and listen to music from YouTube.
- Nuclear - Music player that streams from free sources.
- Inboxer - Unofficial Google Inbox app.
Closed Source
- GitKraken - Git client.
- 1Clipboard - Universal clipboard manager.
- Franz - Skype, Slack, Hangouts, WhatsApp, Grape, Telegram, FB Messenger, Hipchat in the same app.
- Postman - Create and send HTTP requests.
- Slack - Desktop version.
- Avocode - Share design and collaborate.
- Prepros - Compile almost any preprocessing language with live browser refresh.
- Stremio - Media center.
- Typetalk - Share and discuss ideas with your team through instant messaging.
- Pingendo - Bootstrap prototyping.
- Spreaker Studio - Audio recording and broadcasting.
- MockingBot - Prototyping tool for designing apps.
- Caret - Markdown editor.
- Wantedly Chat - Business team chat. (Japanese)
- Remember - Business card management. (Korean)
- Pubu - Real-time chat for team communication. (Chinese)
- BearyChat - Team messaging service. (Chinese)
- MongoDB Compass - Official MongoDB app.
- Freeter - Organizer for freelancers & creatives.
- WhatsApp - Official WhatsApp app.
- CatLight - Build status notifier.
- Paws - Trello client.
- Automint - CRM for automobile businesses.
- CrossCloud - Secure sync for multiple cloud storages.
- Discord - Voice and text chat for gamers.
- Cocos Creator - Game editor for creating web and native games for Cocos2D-x.
- Inkdrop - Markdown notebook for hackers.
- Exodus - Secure, manage, and exchange blockchain assets like Bitcoin and Ethereum.
- Hackolade - Data modeling for NoSQL and multi-model databases.
- ScreenSquid - Record and playback website visitor sessions.
- CashNotify - Monitor your Stripe accounts from your menu bar.
- Mockoon - Mock servers in seconds.
- Twitch - Official Twitch app.
- Fenêtre - Picture-in-picture for your Mac.
- Cleaver - Provision servers and deploy web apps.
Samples
- Electron API usage - Sample apps illustrating usage of Electron APIs.
- Screen Recorder - WebRTC screen recorder.
- Activity Monitor - Shows a doughnut chart of the CPU system, user, and idle activity time.
- Hash - Shows the hash values of entered text using different algorithms.
- Prices - Shows the current price of oil, gold, and silver using the Yahoo Finance API.
- Touch Bar API - Example of macOS Touch Bar integration.
Boilerplates
- electron-boilerplate (by sindresorhus) - Boilerplate to kickstart creating an app.
- generator-electron - Scaffold out an app boilerplate.
- electron-boilerplate (by szwacz) - Comprehensive boilerplate which even generates installers.
- electron-react-boilerplate - Boilerplate based on React and webpack.
- descjop - ClojureScript boilerplate for creating an app.
- electron-quick-start - Clone the repo to try a simple app.
- bozon - Scaffold, run, test, and package your app.
- electron-vue - Easily build your app with Vue and common plugins.
- electron-next-skeleton - Boilerplate to build your app with Next.js.
- electron-sandbox - Boilerplate and tutorial for creating secure apps (sandbox & communication over IPC).
- angular-electron - Angular 5, Electron, TypeScript, SASS, Hot Reload.
Tools
For Electron
- electron-builder - Create installers.
- devtron - Official DevTools extension.
- electron-packager - Package and distribute your app.
- electron-debug - Adds useful debug features.
- electron-is-dev - Check if Electron is running in development.
- electron-localshortcut - Add keyboard shortcuts locally to a window.
- electron-gh-release - Auto-update by releasing on GitHub.
- electron-release - Publish a new release of your app to GitHub.
- electron-updater - Auto-updater leveraging npm to deploy updates.
- fix-path - Fix the $PATH on macOS when run from a GUI app. Useful when spawning a child process.
- auto-launch - Launch apps at system startup.
- nuts - Releases server with auto-updater and GitHub as a backend.
- electron-dl - Simplified file downloads.
- electron-release-server - Self-hosted release server with front-end & auto-updater support.
- electron-rebuild - Rebuild native Node.js modules against the currently installed Electron version.
- electron-compile - Use ES2015, CoffeeScript, Less, Stylus in your app without a precompilation step.
- electron-positioner - Position windows at common spots.
- electron-window-state - Persist window sizes and positions.
- electron-drag - Improved window dragging.
- debug-menu - Chrome-like "inspect element" context-menu.
- electron-installer-debian - Create a Debian package.
- electron-installer-redhat - Create a Red Hat package.
- electron-installer-windows - Create a Windows package.
- electron-sudo - Subprocesses with administrative privileges.
- electron-json-storage - Write and read user settings.
- electron-download - Download the Electron release zip from GitHub.
- ipc-stream - Duplex stream over IPC.
- is-electron-renderer - Check if your code is running in
main
orrenderer
. - electron-osx-sign - Code-signing for macOS apps.
- electron-detach - Restart an Electron app as a detached process.
- ember-electron - Build, test, and package Ember apps.
- electrify - Package Meteor apps.
- spectron - Test Electron apps using ChromeDriver.
- babel-preset-electron - Babel preset that only compiles what's necessary for a particular Electron version.
- electron-is - Utility functions.
- electron-osx-appearance - Simplified API for accessing macOS's appearance settings.
- electron-store - Save and load data like user preferences, app state, cache, etc.
- electron-context-menu - Extensible context menu.
- electron-require - Simplified require.
- NeDB - Embedded persistent or in-memory database.
- electron-devtools-installer - Install DevTools extensions from the Chrome Web Store.
- electron-log - Simple logging.
- electron-redux - Synchronize Redux state across windows.
- electron-vibrancy - Add vibrancy (blur) to windows.
- electron-about-window - 'About This App' window.
- elemon - Live-reload your app during development.
- electron-is-accelerator - Check if a string is a valid accelerator.
- electron-pdf-window - View PDF files in browser windows.
- electron-router - Router tidying up IPC message passing.
- electron-settings - Reads and writes user settings to disk.
- got - Simplified HTTP requests.
- electron-unhandled - Catch unhandled errors and promise rejections.
- electron-process-manager - Process manager UI (like Chrome's task manager).
- ipc-flux - Flux-like state and action management across processes.
- electron-util - Useful utilities for developing apps and modules.
- electron-reloader - Simple auto-reloading during development.
- electron-serve - Static file serving (Useful for routing, like
react-router
). - electron-timber - Pretty logger.
Using Electron
- devtool - Debug Node.js with Chrome DevTools.
- nativefier - Create an app of any website.
- electron-stream - Streaming wrapper.
- Nightmare - High-level browser automation library (alternative to PhantomJS).
- electron-pdf - Generate PDF from URL, HTML, or Markdown files on the command-line.
- Geojsonapp - Preview GeoJSON locally.
- electron-mocha - Run Mocha tests in Electron.
- electron-har - Command-line tool for generating HTTP Archive (HAR).
- electron-windows-store - Turn Electron apps into Windows Store AppX packages.
- Reactotron - Inspect your React and React Native apps.
Components
- Photon - UI toolkit for building beautiful apps.
- React PhotonKit - Photon components built with React.
- menubar - Menubar app framework.
- cookies - Adds support for
document.cookie
. - window - Create and manage windows.
- React Desktop - UI toolkit for macOS and Windows built with React.
- electron-input-menu - Context menu for input elements.
- chrome-tabs - Chrome like tabs.
- titlebar - Emulate the macOS window titlebar.
- Brightwheel - Build and manage UI components with Photon and Etch.
- Xel - Widget toolkit for building native-like apps.
Documentation
- Quick Start
- Official docs
- Essential Electron - Concise overview.
Articles
- Electron Fundamentals
- Building a desktop application with Electron
- Codesigning your app for macOS
- Auto-updating apps for macOS and Windows: The complete guide
- How To Make Your Electron App Sexy
- Electron Rocks! - Blog about working with Electron.
- Building a desktop app with Electron, React, and Redux
- Introducing BrowserView for Electron - New Electron API to embed web apps with fewer bugs and improved performance.
- Migrating Slack’s Desktop App to BrowserView - Slack rewrote their Electron app with
BrowserView
, Redux, Rx, and TypeScript, to fix its performance problems. - Bringing Native Performance to Electron - Realm rewrote their database browser app with Electron for cross-platform support.
- Electron on the App Store - A 5-part series about the journey of making and publishing an Electron app to the Mac App Store.
Books
- Developing an Electron Edge - Preview 💲
- Electron in Action - Preview 💲
- Cross-Platform Desktop Applications 💲
Videos
- Getting Started with Electron 1.x
- Packaging and Distributing Electron Desktop Apps
- Multi Window Electron Desktop Apps
- The State of Electron
- Cross-Platform Desktop Apps with Electron
- Building Native Desktop apps using Electron
- The New Desktop: Electron, React, & Pixel-Perfect Native-Feeling Experiences
- Building Desktop Apps with Node.js and Electron
- Electron Fundamentals course - Pluralsight 💲
- Electron: Building Cross Platform Desktop Apps - Lynda 💲
- Automatically Build and Publish Node and Electron Applications for Linux
- Build a desktop application with Electron - Egghead 💲
- Build Cross-Platform Desktop Apps with Electron - Frontend Masters 💲
- Electron Meetup SF, November 2017 - Includes some good talks on improving app startup time, debugging crashes, etc.
Podcasts
- JavaScript Jabber: Electron with Jessica Lord and Amy Palamountain
- Hanselminutes: Creating cross-platform Electron apps with Jessica Lord
- JavaScript Air: Electron Apps with @jlord and @emorikawa
- The Changelog #216: GitHub's Electron with Zeke Sikelianos
- Full Stack Radio #48: Jessica Lord - Building Desktop Apps with Electron
- NodeUp: Electron with Jessica Lord
Community
- Discuss
- Stack Overflow
@electronjs
on Twitter#atom-shell
on Freenode#electron
on Atom Slack- electron-jp (Japanese)
- electron-br (Brazilian Portuguese)
- electron-kr (Korean)
- electron-pl (Polish)
@electron_ru
on Telegram (Russian)electronjs
on Facebook- Product Hunt
Tips
Contribute some ;)
Contribute
Contributions welcome! Read the contribution guidelines first.
License
To the extent possible under law, Sindre Sorhus has waived all copyright and related or neighboring rights to this work.