Description
In this course, you will :
- Learn how to make native-feeling applications using web development technologies.
- Master the intricacies of development with Electron JS.
- Build applications that work well on both MacOS and Windows from a single codebase.
- Develop both traditional single-window apps and status tray-based apps.
- Understand how to integrate existing technologies like React and Redux into your Electron JS apps.
- Build a lucrative business with desktop apps, because there is so little competition in the marketplace.
Syllabus :
1. Basics of Electron
- How to Get Help
- Course Resources
- Join Our Community!
- Why Does Electron Exist?
- How Does Electron Work?
- History of Electron
2. Handling Electron Projects
- App Overview
- Getting Started
- Starting and Stopping Electron
- Loading HTML Docs
- Selecting Videos
- Sample Video - Download Me!
- Reading File Details
- Introduction to FFMPEG
- OSX FFMPEG Installation
- Windows FFMPEG Setup
- Require Statements in the Browser
- IPC Communication
- Video Duration with FFProbe
- Receiving IPC Events
3. Handling Menu Bars
- App Overview
- App Boilerplate
- Creating the MainWindow
- Constructing Menu Bars
- Menu Bar Gotchas
- On Menu Click Functionality
- Cross Platform Hotkeys
- Creating Separate Windows
- Another Electron Gotcha
- Adding Polish to Electron
- Restoring Developer Tools
- IPC Between Windows
- Garbage Collection with Electron
- Role Shortcuts
- Your Turn - Clearing Lists
4. Status Tray Applications
- App Boilerplate
- What's This React Code?
- BrowserWindow vs Tray
- BrowserWindow Config
- Creating Tray Icons
- Toggling BrowserWindow Visibility
- Detecting Visibility
- The Positioning Bounds System
- Setting Position with Bounds
- Positioning of Windows
- Object Oriented Programming with Electron
- Basics of ES6 Classes
- Subclassing
- The TimerTray Subclass
- Finishing TimerTray Refactor
- Setting Tooltips
- More on Garbage Collection
- Building Context Menus
- Controlling Window Focus
- Hiding Dock Icons
- MainWindow Class
- IPC Between React and Electron
- Displaying Text on the Tray
- Background Throttling
5. Combining Electron with React and Redux
- App Overview
- App Challenges
- BrowserWindow Creation
- Starting up Electron with Webpack
- Overview of React and Redux
- Receiving a List of Videos
- Video Metadata
- Handling Async Bulk Operations with Promises
- Fetching Metadata in Promises
- Refactoring for Multiple Videos
- Wrapup on Metadata
- Output Paths
- Batch Video Conversion
- Handling Conversion Completion
- Detecting Conversion Progress
- Opening Folders with Shell