Electron in the Real World: Architecture, Capabilities, and Performance
Electron gets a bad rap for being a slow and resource-hungry wrapper around Chrome, but in reality, it's a very capable desktop application framework that's well-suited for building complex software. Leveraging the capabilities of Node.js, you can read and write files, work with databases, speak bespoke IP protocols to control connected devices, and then wrap it all up behind a responsive, quick, and friendly user interface.
In this session, we'll explore a successful Electron application that does all of those things. You'll learn about Electron's general architecture and how it works to make all these things happen. You'll hear about how the team of React, Redux and TypeScript all worked together to make this complex application robust and understandable. We'll talk about lessons learned while building this application, including how some realizations and subsequent refactors simplified it and made it faster and easier to implement new features.
We'll cover what was done when performance problems reared their ugly heads so the application could easily handle a hundred state updates per second, smoothly updating metrics and plotting devices' positions on live maps. We'll also talk about what the stack's limitations are, so you know what Electron is good at, helping you to leverage its strengths and avoid its weaknesses.
If you've been wondering whether Electron is right for your project, this tour through the development of a complex and successful application will help give you the information you need to make a well-informed decision and get you started using Electron to build it.
About Matt Behrens
Matt Behrens has been a software developer and consultant with Atomic Object for three years; during that time and for decades before, he's worked and supported on several full-stack applications on the web, desktop, servers, and in the mobile space, across several different industries. Matt has always had a love for networking since the day he first strung copper across his parents' basement to get his stack of cast-off PCs talking to each other and the rest of the world, and to this day he's happiest working on applications where he gets to roll up his sleeves and get systems talking to each other.