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

@interopio/desktop

Package Overview
Dependencies
Maintainers
7
Versions
24
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@interopio/desktop

JavaScript library for io.Connect Desktop clients.

  • 6.2.0
  • npm
  • Socket score

Version published
Weekly downloads
664
decreased by-54.11%
Maintainers
7
Weekly downloads
 
Created
Source

io.Connect Desktop JavaScript Library

The @interopio/desktop library enables web apps to participate in io.Connect Desktop and use io.Connect functionalities via a set of APIs.

Features

The io.Connect Desktop library includes the following APIs:

  • App Management API - manage and monitor interop-enabled apps and their instances;
  • App Preferences API - store custom user-specific data and retrieve it when necessary;
  • Intents API - raise requests for other apps to handle predefined actions (Intents), register apps as Intent handlers, provide users programmatically with options for handling raised Intents via the Intents Resolver UI app;
  • Data sharing:
    • Shared Contexts API - create, update and track named data objects shared by all interop-enabled apps;
    • Channels API - globally accessed named shared contexts that allow users to dynamically group apps from an UI, instructing them to work over the same shared data object;
    • Interop API - offer and consume functionality from other interop-enabled apps by registering Interop methods and streams;
    • Pub/Sub API - basic API that allows apps to publish and subscribe for messages on a specific topic;
  • Windows:
    • Window Management API - create and manipulate various types of io.Connect windows;
    • Layouts API - save and restore the arrangement of any set of apps running in io.Connect Desktop;
    • Themes API - control the available io.Connect themes programmatically;
  • Notifications API - raise notifications, handle notification and action clicks via Interop methods, control the Notification Panel and subscribe for notification events;
  • Metrics API - assess the life cycle of a certain process (app performance, business process, employee productivity, and more) by acquiring, recording and monitoring specific data over time;
  • Hotkeys API - register key combinations and receive notifications when a key combination is pressed by the user, regardless of whether the app is on focus or not;
  • Displays API - capture programmatically screenshots of the available monitors, of windows and window groups;
  • Cookies API - enables web apps to manage cookies;

For more information, see the io.Connect Desktop documentation.

Usage

The @interopio/desktop library attaches a factory function called IODesktop() to the global window object. Call the factory function to initialize the library and access the io.Connect functionalities from the returned API object:

import IODesktop from "@interopio/desktop";

const io = await IODesktop();

Optionally, provide a configuration object for the library initialization. The following example demonstrates enabling the Channels API, which is disabled by default, and additionally initializing the io.Connect Workspaces API:

import IODesktop from "@interopio/desktop";
import IOWorkspaces from "@interopio/workspaces-api";

const config = {
    channels: true,
    libraries: [IOWorkspaces]
};

const io = await IODesktop(config);

// Accessing the io.Connect APIs.
const allChannelNames = await io.channels.all();

await io.workspaces.restoreWorkspace("My Workspace");

Keywords

FAQs

Package last updated on 20 Feb 2024

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