SDK for desktop.

desktop, sdk, electron, typescript, frontend, host, secure, multi-window
npm install @reactivemarkets/desktop-sdk@0.39.0



NOTE pre v1 this is considered alpha/beta quality

CircleCI codecov Dependabot Status GitHub license npm version

Desktop is an open source application for managing multi-window, cross-platform desktop applications; providing deployment, configuration, notifications, logging, monitoring...

Desktop builds on the Electron Framework as well as many other open source packages including socket.io, winston and yargs. The aim is to reuse proven design practices from production systems.


  • Secure
  • Extensible
  • Maximise developer productivity
  • Use battle tested libraries
  • Multi-process


  • Cross platform
  • Secure sandbox
  • Built for developers
  • Simple standardised configuration
  • Window Layouts
  • Notifications
  • Cross application messaging

Quick Start

To install a prebuilt desktop run:

npm install @reactivemarkets/desktop -g

Desktop takes one or many configuration files or urls. See Configuration for more details.

To start the application with 2 windows, from urls, run:

desktop --url=https://google.com --url=https://startpage.com/

To add another window run:

desktop --url=https://duckduckgo.com/

Command Line Usage

Desktop comes with a full command line interface to create configuration and start the application.

For a full list of commands see the built in help:

desktop --help


Applications are defined via configuration files, it is recommended to define your application in YAML. This is easier to read, maintain and allows you to group objects into a single file.

The command line interface allows you to create a basic configuration file in the current working directory:

desktop init --name "My Application" --url https://localhost/

To run that config file specifiy the --file flag:

desktop --file application.yaml

Configuration can be loaded locally or from a url:

desktop -f https://raw.githubusercontent.com/desktop-examples/config/master/examples/single-window.yaml

Building from source

To install all dependencies and build run:

Note: To be able to build for all platforms you will need to install some dependencies. On mac: brew install mono fakeroot dpkg wine

git clone https://github.com/reactivemarkets/desktop.git
cd desktop
npm ci
npm run build


FOSSA Status