Skip to main content

What is XTP?

XTP is a managed service provided by Dylibso, which enables applications to easily become more extensible. This empowers users to customize an application to their needs far beyond what can be done with premade customization options.

In order to do this, XTP provides Hosts (who maintain & deliver the application) the ability to execute Guest plug-ins (code from authorized users), which are managed entirely by XTP. Guest plug-ins adhere to a schema defined by the Host, such that all Guest plug-in code loaded by a Host is successfully executed within the Host application.

In all, XTP provides Hosts with schema configuration, plug-in validation, storage, delivery, and Guest user management. For Guests, XTP provides convenient tools to create and test plug-ins, and ship them to XTP which delivers them to Host applications.

XTP provides a dashboard application for Hosts and Guests, as well as an HTTP API to integrate into Host applications.

Important Concepts

Host App

The Host App is the representation of an extensible application in XTP. Think of it as a workspace where metadata can be defined about the various points in the application that can be extended with plug-ins, and the users that are authorized to publish those plug-ins.

Extension Point

Extension Points represent the specific areas of a host application that can execute plug-ins created and installed by users of the application i.e., Guests. One or more Extension Points can be defined as part of a Host App, each with its own unique schema that governs the compatibility of any plug-ins installed there.

For example, if you have an eCommerce platform, you might define an Extension Point for the section of the application flow where discounting logic is applied during the checkout process, enabling your Guests to push plug-ins that alter the rules and actions associated with discounts.

Guest

Guest access to a Host App enables an XTP User Account to push plug-ins to Extension Points.

Admin

Admin access to a Host App enables an XTP User Account to manage the Host App, with the ability to manage Extension Points and manage Guest access to the Host App.

User Account

Represents a user of the XTP Platform. Can hold one or more "memberships" to XTP Host Apps, with Admin or Guest privileges.