Although every client is unique at Indesign, LLC, a lot of our processes carry over from project to project. As a company of engineers, whenever we find ourselves doing the same thing more than once, we’re primed to search for how we can improve or automate that task. While, of course, the technical underpinnings for automation have existed nearly as long as computers themselves, we are always looking for ways and processes to do things better. This is where the Electron framework comes in.

Electron is an open-source, cross-platform development framework that makes use of JavaScript, HTML, and CSS to develop local applications. One way to think of it is that an Electron app is like a locally hosted web page designed for a custom purpose. The benefits here are tremendous: instead of diving deep into GUI development and using lower-level languages for the back end, we can make use of the widely documented, familiar, and easy-to-use tools that underpin the web to build custom tools fitting almost any application.

Indesign, LLC Using Electron For Product Development & Testing

Examples of When Electron Was Helpful for Indesign, LLC

A recent example of Electron at work at Indesign is our bill of materials, or BOM, analysis tool. Every PCB assembly has a BOM listing the components required to complete the build. With a wide range of component options, some new and some old, a frequent challenge we face in hardware development is knowing when to include a part in our design, and when to avoid it because it’s near the end of its manufacturing support life. There are resources online, but the process is slow and requires a line-by-line search of a BOM that can contain hundreds of parts. Instead of continuing this process, or paying for an expensive off-the-shelf tool with more functionality than needed, we were able to custom design a tool that precisely fit our needs and process.

Another great application of Electron comes during hardware and firmware integration testing. Typically, we use terminal programs like Putty or TeraTerm for this, sending commands over a serial bus one by one to manipulate system settings or states from the command line. This process works well and is extremely robust, but it’s often slow and repetitive. Through the use of custom-built electron apps that can translate and send out serial data, we not only speed up the testing process but make it easier to execute the process and interpret and compare the results.

A third example: On a recent project, we needed to collect a large amount of GPS data from a development kit. In less than a week’s time, our team was able to develop a full-featured application for the development kit that saved countless hours of set-up, parsing, and formatting time that would have otherwise been required to manage all the generated data.

Electron Use on the Rise!

Indesign isn’t alone in leveraging Electron these days. Because the framework is so robust and flexible, many corporations are moving to Electron for their desktop applications. Skype, Discord, and Slack all use Electron for their desktop applications. Even Visual Studio Code—the development environment many use to develop their own Electron apps—is an Electron app!

Over the last couple of months, we’ve been lucky to have one of our firmware engineers share his knowledge on the framework through some internal classes. Through these classes, several members of both our hardware and firmware teams got an excellent introduction to the Electron framework, which gives us the flexibility to not rely on just one or two knowledgeable team members to implement these solutions when needed.

Indesign, LLC and Electron

Because of its simplicity and depth, Electron has become an indispensable tool for our development and testing process at Indesign, and over time we are sure to discover more ways that it can improve our efficiency and effectiveness in developing products for our clients.

Contact us today by calling (317) 377-5450 to see how we can utilize Electron to reach your product development goals!