Plugin Developer Documentation

Extend the functionality of Ango Hub with custom plugins.

Custom plugins allow you to extend what Ango Hub can do. With custom plugins you can automatically convert outputs, integrate your own models, and more.

This page will cover general information about creating plugins. Visit each plugin's page for more on how to create and run each plugin type.

In short, you'll create a plugin on Hub. This will provide you with a plugin ID and secret, which you'll use in your Python script to connect your script to the plugin on Hub. For the plugin to run, your Python code will need to be running, either locally on or a cloud.

Types of Custom Plugins Available

  • Export. Create a script to automatically convert Ango Hub's export to the format of your choice.

  • Batch Model. Integrate your ML model into Ango Hub, pass in assets and pre-label with its results. Run the model for a batch of assets.

  • Model. Integrate your ML model into Ango Hub, pass in assets and pre-label with its results.

  • File Explorer. Link your cloud storage of choice to Ango Hub and navigate its file structure directly within Hub itself. Then, bulk import assets from a folder with a single click.

  • Markdown Generator. Get a Markdown and a .csv file. Process them with a Python script, and upload the results to Hub as a markdown asset.

How to Create a New Plugin

Step 1: Create a new Plugin on Hub

From Hub, click on Plugins on the top navbar, then enter the Development section and click on Create a Plugin.

A dialog will appear:

  • Name. The name of your plugin.

  • Description. A description for your plugin. This will always appear next to the plugin's name.

  • Details: A longer description of your plugin which users will see when they open it to run it. As this field supports rich text, this is a good opportunity to add links to docs pages or other detailed information on how to run the plugin.

  • Banner URL: A link to a square image which will be used to represent your plugin. Leave blank for default.

  • Type: The type of your plugin. See the section above for the types available.

  • Class Names (only appears if selecting "Model" as the plugin type.) Add your model's class names, which will then be mapped to Ango Hub category names when being run. More on the page for Model Plugins.

  • Public: Makes this plugin accessible to the Plugin Directory.

  • Status: Lists the plugin on the Directory. If the plugin is not public, it will be listed for the current organization. If public, it will be listed on the Directory for all Ango Hub users.

  • Default Config: When running a plugin, users will have the option to input custom JSON in this field. The JSON will be passed to your callback function with other parameters. Here, you can input JSON that will be shown and pre-filled by default to users running the plugin. This is a good way to show users a sample of what you expect from the custom JSON config from users.

Click on OK to create the plugin and add it to your Development list.

Step 2: Create and Run your Python Script

From the Development section of the Plugins page on Hub, find the plugin you've just created in Step 1. You'll see a field called ID and a field called Secret. Take note of these.

At this point, you will need to create a Python script and run it. When you run your Python script, the plugin's liveness indicator (e.g., the red light) on Hub will turn green, meaning that the plugin is live.

Depending on the type of plugin you've chosen earlier (Export, Batch Model, Model, File Explorer, or Markdown Generator), please visit each type's docs page where you will be able to find sample code. You will need to integrate your plugin's ID and Secret in the code for your plugin to work. Everything is shown in the linked docs pages.

Plugin Info

Once you create a plugin, it will be visible in the Development section of the Plugins page.

ID: The plugin's unique ID.

Secret: The Plugin Secret is what, when necessary, you will use to authenticate with Ango Hub's servers to run your custom script. More information below. Treat this secret as a password and do not share it with anyone else.

Live: When your plugin is running, this change will instantly turn green. When you stop execution of your plugin, the light will turn back to red in a couple of minutes.

Type: The type of plugin, as mentioned in this section.

As mentioned above, each plugin type has a different way of being set and run. Please check each plugin's page for more:

Last updated