Finsemble: Definition Of Key Terms

Definition of Key Terms

Client API A JavaScript API that interfaces with one or more microservices using Finsemble Router messages. Some client APIs are defined for specific microservices, like the Launcher Client API is specifically for the Launcher microservice. Other client APIs may provide composite functionality out of one or more existing microservices, like the Dialog Manager Client API which builds on the Launcher Client. Depending on the microservice, some parts of the API functionality may be implemented on the client side with the centralized functionality residing on the microservices side.
Finsemble Application A desktop application built on Finsemble and composed of Finsemble components. Depending on context, this term might refer to a specific application instance running on a specific computer.
Finsemble Component A piece of functionality built with HTML5/JavaScript that lives in a Finsemble window. A Finsemble component is the basic building block of the Finsemble application. A component may have multiple active instances within the Finsemble application, each running in its own Finsemble window (e.g., multiple chart windows, multiple chat windows). A distinction can be made between presentation components, which are components created to provide common UI functionality (like dialogs and toolbars), and business components, which are components that manage real-life business objects (like chat and charts). All components are built by using the Finsemble library's client APIs.
Finsemble Framework Also known as just Finsemble. The Finsemble framework is a cooperating set of software components and microservices used to build HTML5 desktop applications on top of the OpenFin operating layer.
Finsemble Library A set of client APIs that have been packaged together for easy component access. Only Finsemble components use the library; microservices directly access the client APIs to use other microservices.
Finsemble Router A microservice that is the center point for all Finsemble communication. The Finsemble Router sends and receives messages between windows, enabling communication between all Finsemble components and services through three types of messaging: Listen/Transmit, Query/Response, and SubPub.
Finsemble Window A Chromium container, sitting on top of OpenFin's secure operating layer, injected with Finsemble capabilities. These Finsemble capabilities allow the window to plug into the overall Finsemble application, cooperating with other Finsemble components and microservices. A Finsemble window always contains an instance of a Finsemble component.
Microservice An active, independently-threaded JavaScript module providing centralized functionality throughout a Finsemble application. Microservices provide capabilities to Finsemble components as well as other microservices. Example microservices include the Finsemble Router microservice, Launcher microservice, Linker microservice, and Chat microservice. Microservices typically don't have a UI; instead, they can be interacted with using a corresponding client API. All communication to and from microservices is through the Finsemble Router (itself a microservice). A Finsemble microservice that connects to one or more external cloud services like datafeeds or databases is called a connector microservice. A microservice is sometimes simply called a service.
OpenFin Operating Layer OpenFin offers a secure run-time container that executes on a operating system (e.g., Windows, OSX). The OpenFin operating layer enables the Chromium browser to run locally, essentially enabling HTML5 web pages to load and execute within an operating system, (optionally) decoupled from the internet.
User-Defined Components User-defined components are HTML5 web pages that users integrate into a Finsemble window. If the HTML5 web page has no special customization or knowledge of Finsemble, its integration into the Finsemble application is limited.