Hello everyone.
I am proud to announce the release of neopo, a utility for locally building and flashing Particle projects to Particle devices that integrates with Particle Workbench.
TL;DR
I’ve made a replacement for po
and po-util
written in Python that is fully compatible with Particle Workbench and particle-cli
. Here is the GitHub repository:
You can install neopo
with the following command:
$ bash <( curl -sL https://git.io/JfwhJ )
Story
Four years ago I created po-util
, a large, messy shell script for building, flashing, and interacting with Particle devices. After maintaining it for two years, it was in desperate need of a rewrite because the script was over 2,000 lines long.
I created a new repository called po
and continued development there, breaking up the script into multiple files and taking on dependencies in a vain attempt to improve the maintainability of the project. Over the past year, I only made a few updates to po
, letting the project grow stale. It grew stale because I had not fully integrated the project with newly developed tools like Workbench and the improvements made to particle-cli
.
Since the initial release of Workbench, I dreamed of integrating its features and dependencies into a slick, useful tool that can be used on Linux and macOS independent from the GUI of Visual Studio Code.
In the past week, I’ve realized that dream. Neopo natively uses the Workbench project format and relies on the same dependencies and Makefile. It can even manage dependencies as well. Overall, not only is neopo an excellent companion to Workbench, but it offers unparalleled utility in build environments where Workbench is not an option as well.
To all users of po
, I highly recommend switching over to neopo for your local Particle needs, as it is an immense improvement over the previous project. To everyone else, I would greatly appreciate it if you could give neopo a try.
I await your feedback and bug reports. Feel free to make an issue on the GitHub repository.