Giter Site home page Giter Site logo

reactivemarkets / desktop Goto Github PK

View Code? Open in Web Editor NEW
17.0 15.0 9.0 13.57 MB

Desktop is an open source application for managing multi-window, cross-platform desktop applications.

Home Page: https://reactivemarkets.github.io/desktop/

License: Other

JavaScript 6.22% TypeScript 93.65% Shell 0.12%
electron multi-window host typescript secure frontend

desktop's Introduction

Desktop

NOTE pre v1 this is considered beta quality

CircleCI codecov 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 expressjs, winston and yargs. The aim is to reuse proven design practices from production systems.

Aims

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

Features

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

Documentation

See Documentation.

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

Configuration

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/main/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

License

FOSSA Status

desktop's People

Contributors

dependabot-preview[bot] avatar dependabot[bot] avatar markmcdowell avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

desktop's Issues

did-fail-load is reported when using hot reload

Hey, I tried developing an application using desktop and I had two issues so far: I'm not able to change security policy when installed desktop globally using npm to use http and second most important is a bug in error handling that causes a window with message -3: to appear with only choice to close the window.

I had to comment out this dialog box and I'm able to develop with hot reloads now.

Unknown argument: sandbox

I'm submitting a...

  • bug
  • feature
  • chore

What is the current behavior

shows a random argument error: Unknown argument: sandbox
image

What is the expected behavior

to actually work

Please tell us about your environment

5.15.32-1-MANJARO

desktop version: Release v0.38.0 (the .snap image)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.