Particle-offline-compiler: atom package for 100% local compiling + auto DFU update


If you’re developing on a local cloud or need to compile locally, you currently have particle-cli which is fantastic for getting all things Particle setup via command line.

It’s a good chance that you’re using some IDE or text editor to write your code, which results in a bit of a shuffle between your terminal and IDE, to execute the make/upload scripts and testing your work.

I wrote a basic Atom package that supports a faster workflow for those of us developing ‘off the grid’ – i.e. using local clouds and/or compiling locally. It uses the make scripts provided by spark-firmware and integrates it into the Atom UI, providing rudimentary commands to compile and upload rapidly to a serial port of your choosing. The best analogy to describe this workflow would be like the Arduino IDE, where you select a local device to then compile and upload firmware to.

This is not meant to confuse users with Particle Dev, which is great. I want to share this relatively simple package as I was limited by the non-local, building capabilities of the Web Build/IDE, which also slowed down the rate at which one could easily go between writing code and testing/experimenting with their Particle devices.

There might be others in the same situation with similar frustrations, and I hope this might help out the community.

So…if you’re developing Particle-cloud based projects, Web Build / Particle Dev is still the best way to do it. For off-gridders, perhaps this package might help? :grinning:

Here’s the link to the repo:

Instructions and notes can be found there as well.

(apm/github is giving me some authentication grief over publishing this on, so you’ll have to install this manually to ~/.atom/packages for now)

Local Compile and particle dev

Seems like you need some docs help so look out for my PR :wink:


The atom package has been published, and you can now install the package directly via atom / Particle Dev:


This will not work with the Electron. Correct ?


Nope, not yet; sorry! It’s technically possible, but I haven’t had the time to update it.