Add Slate application to Marketplace product [Beta]

Use Foundry DevOps to include your Slate applications in Marketplace products for other users to install and reuse. Learn how to create your first product.

Supported features

Marketplace products currently support Slate applications with object set and function sources configured via the Platform tab. Marketplace also supports static Slate applications with no data loading.

Adding Slate applications to products

To add a Slate application to a product, first create a product and then select the Slate Application content type as below.

Add Slate application

Packaging Slate applications that use the Code Sandbox widget

Slate applications which have dependencies on external libraries for the Code Sandbox widget can be packaged with Marketplace.

If you want to generate copies of the library files upon installation, ensure that you include the files for the libraries in the Files tab under the Content tab when creating your product. When a user installs the product, they will get a copy of those files in their project. The Code Sandbox widget will then reference their copy of the library files.

Code Sandbox with dependencies

Slate also supports providing libraries via a CDN link (for example, https://unpkg.com/browse/chart.js@2.7.1/). The CDN links are untouched, so the installed Slate application will have the same CDN links. This may mean that the user will need to have configured their CSP to allow the CDN links.

For more information about using libraries with the Code Sandbox widget, see the Code Sandbox widget documentation.

Package Slate applications that use the Ontology SDK

Slate applications that use the Ontology SDK (OSDK) can be packaged with Marketplace. Foundry DevOps automatically handles OSDK Ontology dependencies during packaging, so no manual dependency configuration is required.

OSDK dependencies for a Slate application in DevOps.

API name conflicts

API name conflicts will cause the Slate function code to be mismatched with the Ontology entities in the target environment. They can be resolved manually by updating the Slate function code after installation.

API name conflicts can occur during installation in the following situations:

  • When the target environment has Ontology entities with identical API names. For example, if both environments have an object type named flights.
  • When an object's API name doesn't match its display name. For example, if an object type with the display name flights has an API name of flightsXYZ, it will be given the default API name of flights on installation. In this case, Slate function code will no longer match the API name, and a naming conflict could occur if an object type with the API name flights already exists.

This currently applies to all Ontology entities, including object types, link types, action types and Functions.

To prevent API name conflicts:

  • Use descriptive display names so that the generated API names are unlikely to conflict with existing names.
  • Check existing object types in target environments.
  • Be prepared to update Slate function code if API names change during installation.