{"id":20827267,"url":"https://github.com/ccnokes/build-a-desktop-app-with-electron","last_synced_at":"2025-05-07T21:03:29.653Z","repository":{"id":88143998,"uuid":"94014319","full_name":"ccnokes/build-a-desktop-app-with-electron","owner":"ccnokes","description":"This is the GitHub repo to accompany the Egghead Course \"Build a desktop application with Electron\"","archived":false,"fork":false,"pushed_at":"2017-10-26T17:11:38.000Z","size":955,"stargazers_count":56,"open_issues_count":0,"forks_count":25,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-05-07T21:03:03.451Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ccnokes.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-06-11T15:40:05.000Z","updated_at":"2025-05-03T16:19:06.000Z","dependencies_parsed_at":"2023-07-23T19:45:22.563Z","dependency_job_id":null,"html_url":"https://github.com/ccnokes/build-a-desktop-app-with-electron","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ccnokes%2Fbuild-a-desktop-app-with-electron","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ccnokes%2Fbuild-a-desktop-app-with-electron/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ccnokes%2Fbuild-a-desktop-app-with-electron/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ccnokes%2Fbuild-a-desktop-app-with-electron/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ccnokes","download_url":"https://codeload.github.com/ccnokes/build-a-desktop-app-with-electron/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252954409,"owners_count":21830902,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-17T23:11:37.248Z","updated_at":"2025-05-07T21:03:29.644Z","avatar_url":"https://github.com/ccnokes.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Build a desktop application with Electron\n\n[![Mentioned in Awesome Electron](https://awesome.re/mentioned-badge.svg)](https://github.com/sindresorhus/awesome-electron#videos)\n\n\nThis is the GitHub repo to accompany the Egghead Course \"Build a desktop application with Electron\". Watch it on [egghead.io](https://egghead.io/courses/build-a-desktop-application-with-electron).\n\n![](https://github.com/ccnokes/build-a-desktop-app-with-electron/raw/master/images/egghead-electron-logo.png)\n\n---\n\nElectron is a framework that makes it easy to create cross-platform desktop apps with JavaScript, HTML, and CSS. Electron and open-source tools give you everything you need to create a compelling desktop app--native user interface elements like menus and dialogs, installers, auto-updates, and more.\nThis course will teach you the core concepts of Electron so that you can leverage it to create your own desktop application for macOS and Windows.\n\nWe'll go over:\n- Creating user interfaces in Electron (both HTML based and native)\n- Understanding Electron's multi-process architecture\n- Shipping your app to users\n\n# Lessons\n1. [Create a \"Hello World\" app using Electron](https://egghead.io/lessons/javascript-create-a-hello-world-app-using-electron)\n\n2. [Load CSS in a Electron BrowserWindow](https://egghead.io/lessons/javascript-load-css-in-a-electron-browserwindow)\n\n3. [Load JavaScript in an Electron BrowserWindow](https://egghead.io/lessons/javascript-load-javascript-in-an-electron-browserwindow)\n\n4. [Create a native desktop system menu with the Electron Menu module](https://egghead.io/lessons/javascript-create-a-native-desktop-system-menu-with-the-electron-menu-module)\n\n5. [Display native desktop dialog windows with Electron](https://egghead.io/lessons/javascript-display-native-desktop-dialog-windows-with-electron)\n\n6. [Save/Open a file with an Electron dialog window](https://egghead.io/lessons/javascript-save-open-a-file-with-an-electron-dialog-window)\n\n7. [Understand Electron’s main and renderer process architecture](https://egghead.io/lessons/javascript-understand-electron-s-main-and-renderer-process-architecture)\n\n8. [Communicate between Electron processes using IPC](https://egghead.io/lessons/javascript-communicate-between-electron-processes-using-ipc)\n\n9. [Communicate between Electron processes using the remote module](https://egghead.io/lessons/javascript-communicate-between-electron-processes-using-the-remote-module)\n\n10. [Create an icon for your Electron app](https://egghead.io/lessons/javascript-create-an-icon-for-your-electron-app)\n\n11. [Package your Electron application into a executable file with electron-builder](https://egghead.io/lessons/javascript-package-your-electron-application-into-a-executable-file-with-electron-builder)\n\n12. [Code sign your Electron application with electron-builder](https://egghead.io/lessons/javascript-code-sign-your-electron-application-with-electron-builder)\n\n13. [Ship updates to your Electron app with autoUpdater (Mac)](https://egghead.io/lessons/javascript-ship-updates-to-your-electron-app-with-autoupdater-mac)\n\n14. [Ship updates to your Electron app with autoUpdater (Windows)](https://egghead.io/lessons/javascript-ship-updates-to-your-electron-app-with-autoupdater-windows)\n\n---\n\n## Usage\n```\ngit clone https://github.com/ccnokes/build-a-desktop-app-with-electron.git\n```\n\nIf you want to run each example, you may want to save disk space by symlinking the node_modules at the root of the project to each lesson. To do so:\n\n```\nnpm install \nnpm run symlink\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fccnokes%2Fbuild-a-desktop-app-with-electron","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fccnokes%2Fbuild-a-desktop-app-with-electron","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fccnokes%2Fbuild-a-desktop-app-with-electron/lists"}