This is the client-side code for my atom-shell auto-update.
The idea is to use GitHub as a repo for your sourcecode, downloading the latest 'release' in asar format ready to run.
This demo tracks the current version (to check whether updates are required) and uses my demo Express project to download the latest GitHub release as an asar file
The Express demo is here
https://github.com/shrewdlogarithm/atom-shell-auto-update-express/
Note: this isn't meant to be a working project, just an idea of how you can do this. Feel free to ask questions/raise issues or even make suggestions on how to improve it!