Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

ataraxia-local

Package Overview
Dependencies
Maintainers
1
Versions
29
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

ataraxia-local

Machine-local transport for Ataraxia P2P messaging

  • 0.12.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

ataraxia-local

npm version Dependencies Typedoc

Machine-local transport for Ataraxia. This transport connects together instances on the same machine via a Unix socket.

Usage

npm install --save ataraxia-local

To use only the machine-local transport:

import { Network, AnonymousAuth } from 'ataraxia';
import { MachineLocalTransport } from 'ataraxia-local';

// Setup a network
const net = new Network({
  name: 'name-of-your-app-or-network',

  transports: [
    new MachineLocalTransport()
  ]
});

await net.join();

onLeader can be used to start a secondary network transport that will handle connections to other machines:

import { Network, AnonymousAuth } from 'ataraxia';
import { TCPTransport, TCPPeerMDNSDiscovery } from 'ataraxia-tcp';
import { MachineLocalTransport } from 'ataraxia-local';

// Setup a network
const net = new Network({
  name: 'name-of-your-app-or-network',
});

net.addTransport(new MachineLocalTransport({
  onLeader: () => {
    /*
    * The leader event is emitted when this instance becomes the leader
    * of the machine-local network. This instance will now handle
    * connections to other machines in the network.
    */
    net.addTransport(new TCPTransport({
      discovery: new TCPPeerMDNSDiscovery(),

      authentication: [
        new AnonymousAuth()
      ]
    }));
  }
});

await net.join();

API

  • new MachineLocalTransport(options)

    Create a new instance of the transport.

    • options
      • path?: string, path of the local socket. If not specified the transport defaults to creating a socket in the temporary directory of the system using the name of the network.
      • onLeader?: () => void, function that will be run if this instance becomes the leader of the local network.
  • onLeader(callback: () => void)

    Event emitted if this transport becomes the leader of the local network.

FAQs

Package last updated on 18 Dec 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc