Navigator Prefabricating Marinates

    onyx-server

    0.5.0 • Public • Published

    Onyx Server

    Mailboxing & data service for the Onyx app.

    Prerequisites

    Node v8+ with npm.

    Installation

    npm install --global onyx-server

    Usage

    CLI

    onyx-server --port 5000 --http-url http://localhost:8500 --ws-url ws://localhost:8546

    All arguments are optional, when not provided the server will use environment variables ONYX_PORT, SWARM_HTTP_URL and SWARM_WS_URL or its defaults (WebSocket on ws://localhost:8546, HTTP on http://localhost:8500 and port 5000).

    Additionally you can pass -u or --unsecure to dismiss using TLS, only recommended for when connecting client and server over a local connection

    The DEBUG environment variable can be used to activate logs, ex:

    DEBUG="onyx*" onyx-server

    Connection security

    The Onyx client connects to Onyx server using a WebSocket, and so uses TLS certificates to authenticate and encrypt the connection. Use of client certificates is enforced so that only your clients with the correct certificate will be allowed to connect to the server, others are rejected. For mobile clients, where it can be more difficult to handle cert files, the server allows clients accessing the cert endpoint to download a password-encrypted p12 client cert. For convenience, you can use the provided script to generate a set of unique self-signed certificates.

    ./scripts/gen-certs.sh -p <certificate-password> -i <ip-address-to-certify> -d <domain-to-certify>

    Development

    To build local version run yarn build. Afterwards you can start the built server with yarn start.

    Onyx server depends on having a local swarm node running. You can start it by running the start_swarm_node.sh script. This should allow you to run onyx-server with no special arguments.

    in one shell:

    ./scripts/start_swarm_node.sh <some_swarm_data_directory_here>

    in another shell:

    yarn start

    API

    import Conf from 'conf'
    import startServer from 'onyx-server'
     
    startServer({
      httpUrl: 'http://localhost:8500',
      wsUrl: 'ws://localhost:8546',
      port: 5000,
      store: new Conf(),
    }).then(
      server => {
        console.log('server started')
      },
      err => {
        console.log('failed to start server', err)
      },
    )

    All parameters are optional, fallback values will be used for the parameters not provided.

    License

    MIT.
    See LICENSE file.

    Keywords

    none

    Install

    npm i onyx-server

    DownloadsWeekly Downloads

    0

    Version

    0.5.0

    License

    MIT

    Unpacked Size

    108 kB

    Total Files

    33

    Last publish

    Collaborators

    • sarahwiley
    • mosic
    • aclarke
    • howleysv
    • diogoperillo
    • paul_lecam