colinsanity / electron-release-server

A fully featured, self-hosted release server for electron applications, compatible with auto-updater.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Electron Release Server

A node web server which serves & manages releases of the your Electron App, and is fully compatible with Squirrel Auto-updater (which is built into Electron).

Note: while I market this as a release server for Electron applications, it would work for any application using Squirrel.

If you host your project on your Github and do not need a UI for your app, then Nuts is probably what you're looking for. Otherwise, you're in the same boat as I was, and you've found the right place!

Features

  • ✨ Awesome release management interface powered by AngularJS
    • Authenticates with LDAP, easy to modify to another authentication method if needed
  • ✨ Store assets on server disk, or Amazon S3 (with minor modifications)
    • Use pretty much any database for persistence, thanks to Sails & Waterline
  • ✨ Simple but powerful download urls
    • /download/latest
    • /download/latest/:os
    • /download/:version
    • /download/:version/:os
    • /download/channel/:channel
    • /download/channel/:channel/:os
  • ✨ Support pre-release channels (beta, alpha, ...)
  • ✨ Auto-updates with Squirrel
    • For Mac using /update?version=<x.x.x>&platform=osx
    • For Windows using Squirrel.Windows and Nugets packages
  • ✨ Serve the perfect type of assets: .zip for Squirrel.Mac, .nupkg for Squirrel.Windows, .dmg for Mac users, ...
  • ✨ Release notes endpoint
    • /notes/:version

Deploy it / Start it

Follow our guide to deploy Electron Release Server.

Auto-updater / Squirrel

This server provides an endpoint for Squirrel auto-updater, it supports both OS X and Windows.

Documentation

Check out the documentation for more details.

Building Releases

I highly recommend using electron-builder for packaging & releasing your applications. Once you have built your app with that, you can upload the artifacts for your users right away!

Credit

This project has been built from the SailsJs base up by Arek Sredzki, with inspiration from nuts.

I've also borrowed some of their documentation! Thanks!

About

A fully featured, self-hosted release server for electron applications, compatible with auto-updater.


Languages

Language:JavaScript 72.0%Language:CSS 19.6%Language:HTML 8.4%