What is io.Connect Browser?
Overview
io.Connect Browser is an integration platform for web apps. It enables standalone web apps to share data between each other, expose functionality, open and manipulate windows. For example, combining Progressive Web Apps with io.Connect Browser not only leverages the advantages of PWAs (native-like feel, working offline, enhanced performance, and more), but incorporates an interoperability layer in your web app ecosystem as well.
In industries and businesses depending on tens or hundreds of different apps for processing information (e.g., financial market data, client data), interoperability between apps has become an urgent necessity. Enabling apps to expose functionality, share data between each other and control other windows allows you to create meaningful window arrangements and define coherent workflows for the user. io.Connect Browser solves user-oriented problems, like errors from copy/pasting between apps, wasting time in finding and launching the right app, constant switching between many already running apps, and making the best use of the precious screen real estate. This dramatically increases task completion times and user satisfaction. On a larger scale, enhancing employee productivity leads to reduced costs and higher customer satisfaction.
For the io.Connect Browser general and API requirements and compatibility, see the Requirements & Compatibility section.
High Level Structure
An io.Connect Browser project consists of a Main app (or Browser Platform) which uses the @interopio/browser-platform
library and multiple Browser Client apps that use the @interopio/browser
library. The Main app acts as a hub through which the user can access all other apps part of the io.Connect Browser project, while the @interopio/browser-platform
library provides the communication connection between all client apps. The @interopio/browser
library provides io.Connect functionality to the client apps through sets of io.Connect APIs.
For more details, see the Capabilities section.
Licensing
The @interopio/browser-platform
library, which is used for creating a Main app and enables all io.Connect Browser functionalities, is free to download from the public NPM registry, but it requires a valid license key to operate. To purchase a license or request a trial one, contact us.
For more details on how to use the io.Connect Browser platform if you already have a valid license key, see the Developers > Browser Platform section.
Features
App Management
Web apps participating in an io.Connect Browser project (interop-enabled apps) are treated as abstractions. Each app and all its instances are tied to abstract objects within the framework which allows you to control the using the App Management API - start, stop, provide starting context, track app and instance events.
Intents
Intents are closely related to App Management and allow you to enhance end user workflows. In your project you may have one or more apps suitable for executing a predefined action or handling predefined data structures. The Intents API enables you to directly determine and start the necessary app during the workflow process or present the user with a list of all suitable apps to choose via an Intents Resolver UI app.
Shared Contexts
Shared Contexts allow you to easily share data between all apps in an io.Connect Browser project. Your apps can create and update shared context objects, subscribe for updates and react accordingly. Sharing data programmatically between your apps obsoletes the need for manual copy/paste
Channels
Channels are globally accessible shared contexts that have assigned names and color codes. Your apps can join, leave and update a Channel, and also subscribe for updates to a Channel. The Channels API allows you to create a Channel Selector UI for end users to manually join or remove apps from a Channel.
Interop
The Interop API enables your apps to register methods that provide functionality and streams that provide data for other apps to use. The Interop methods and streams can be invoked and used by all apps within the framework.
Window Management
The Window Management capabilities of io.Connect Browser allow you to open and close multiple windows, control their bounds, pass initial context, manage various window settings, and track events related to opening and closing windows.
Workspaces
Workspaces provide advanced window management facilities for organizing your apps into meaningful arrangements within a single window frame called a Workspaces App. Multiple Workspaces can be hosted in the same Workspaces App as tabs. App windows within a Workspace can be arranged programmatically or by manual drag and drop, and the desired Workspace Layout can be saved and restored later. This allows end users to easily build and modify Workspaces for specific tasks or workflows that require multiple interop-enabled apps. Restoring a Workspace with a single click empowers end users to focus entirely on executing the necessary business actions, without spending time and effort on manually preparing daily app setups.
Layouts
End users in large enterprises often have multi-monitor setups on which they arrange the necessary apps in the most convenient way for executing daily tasks. The Layouts feature of io.Connect Browser allows them to save and later restore the exact arrangement and context of their environment - windows, apps, Workspaces, and their bounds and context. Users can save multiple apps and Workspaces in different Layouts, each corresponding to a specific task or workflow. Restoring the saved Layout happens with a single click and saves time and effort for finding, launching and arranging the desired apps.
Plugins
Plugins enable executing initial system logic (e.g., initializing data providers, registering methods) and modifying the behavior of the @interopio/browser-platform
before fully initializing the Main app or any of the Browser Client apps.
Notifications
The Notifications API provides a way to display native notifications with actions and to handle notification and action clicks.
Dev Tools
In addition to the default browser console accessible through F12
, an io.Connect Browser project benefits from two other Dev Tools - the Interop Viewer and the Context Viewer. They enable you to observe and test the io.Connect functionalities in your interop-enabled apps in real time, without the need of dummy apps. You can use the Interop Viewer to monitor and test the behavior of all registered Interop methods and streams and the Context Viewer to track and modify all available shared contexts.
io.Manager
An io.Connect Browser project can connect to io.Manager and use its functionalities.
For more details about io.Manager, see the io.Manager section of the io.Connect Desktop documentation.
Application Adapters
It's common for large enterprises to depend heavily on established third-party apps like Excel, Salesforce, or Bloomberg. Integration with these apps is critical, but often complicated. The io.Connect Browser Connectors enable your web apps to integrate easily with Bloomberg, Fidessa, Salesforce, Excel, Outlook, and more, saving your organization considerable development effort and resources.
Cross Machine Interoperability
io.Connect Browser allows interoperability between apps running on different user machines. This is usually achieved by hosting an io.Connect Gateway on a remote server and connecting to it.
Customer Support
Customer support is included under a paid license for io.Connect Browser. For more information, contact us.