io.Connect Browser

io.Connect Browser is a zero-install, browser-native platform that enables real-time data sharing and interaction between web applications. It runs entirely within modern browsers — no desktop agent or native installation required.

Architecture

io.Connect Browser uses a hub-and-spoke architecture within the browser:

  • Platform App (Hub) — The main web application that initializes the io.Connect environment using @interopio/browser-platform. It manages the messaging bus and hosts client apps, typically as iframes or in separate tabs.
  • Client Apps (Spokes) — Individual web applications using @interopio/browserthat connect to the Platform hub. Each client has full access to the io.Connect API surface.

Platform Initialization

main.tsx (Platform app)
import ReactDOM from "react-dom/client";
import IOBrowserPlatform from "@interopio/browser-platform";
import { IOConnectProvider } from "@interopio/react-hooks";
import type { IOConnectInitSettings } from "@interopio/react-hooks";
import App from "./App";

const settings: IOConnectInitSettings = {
  browserPlatform: {
    factory: IOBrowserPlatform,
    config: {
      licenseKey: import.meta.env.VITE_IOCONNECT_LICENSE_KEY,
    },
  },
};

ReactDOM.createRoot(document.getElementById("root")!).render(
  <IOConnectProvider settings={settings} fallback={<div>Loading platform...</div>}>
    <App />
  </IOConnectProvider>
);

Client Initialization

main.tsx (Client app)
import ReactDOM from "react-dom/client";
import IOBrowser from "@interopio/browser";
import { IOConnectProvider } from "@interopio/react-hooks";
import type { IOConnectInitSettings } from "@interopio/react-hooks";
import App from "./App";

const settings: IOConnectInitSettings = {
  browser: {
    factory: IOBrowser,
  },
};

ReactDOM.createRoot(document.getElementById("root")!).render(
  <IOConnectProvider settings={settings} fallback={<div>Connecting...</div>}>
    <App />
  </IOConnectProvider>
);
License Keyio.Connect Browser Platform requires a license key for initialization. Store it in a .env file as VITE_IOCONNECT_LICENSE_KEY and contact interop.io to request an evaluation license.

Available APIs

Browser apps have access to the full io.Connect API surface:

NamespaceDescriptionFDC3 Equivalent
io.contextsShared Contexts — global state synchronizationApp Channels
io.channelsChannels — user-driven color-coded data linkingUser Channels
io.interopMethods (RPC) and Streams (pub/sub)
io.intentsIntents — action-based workflow orchestrationFDC3 Intents

Supported Browsers

  • Google Chrome / Chromium (recommended)
  • Microsoft Edge
  • Safari
  • Firefox

FDC3 Support

io.Connect Browser supports the FDC3 Web Connection Protocol natively. FDC3-compliant applications can connect to the io.Connect Browser platform and participate in data sharing and intent workflows without any additional configuration.

Learn More

External Documentation