Get Started with the C# Extensibility API

Last modified: September 25, 2025

Introduction

This document describes how to set up a basic development environment for building extensions.

Development Setup

The recommended development environment is Visual Studio 2022 running on Windows. This documentation is centered on this setup. You can also use other IDEs and other .NET compatible programming languages like F#.

Install the latest Studio Pro version from the Mendix Marketplace. Make sure to keep this Studio Pro installation up-to-date to benefit from new features and fixes.

Using Extensibility API via a Hosted NuGet Package

Start extension development by including the Mendix.StudioPro.ExtensionsAPI NuGet package to your project by searching for Mendix.Studio.ExtensionsAPI in NuGet.

Depending on your local environment setup, you may need to manually add a NuGet package to your solution. You can add a package source to Visual Studio via the menu by clicking Tools > Options > NuGet Package Manager > Package Sources.

Importing Extensibility API via a NuGet Package Hosted on a Local Repository

Another way to start extension development is to import a locally hosted Mendix.StudioPro.ExtensionsAPI NuGet package into your project.

To create a local NuGet repository that will let you host and use NuGet packages shared with you, follow the steps below:

  1. Go to Tools > Options > NuGet Package Manager > Package Sources.
  2. Click the green plus sign and specify a local folder, instead of a network location.
  3. Drop the package into the local folder.
  4. Refresh the NuGet manager to see the package alongside the other packages.

Extensions Development Setup

Extensions load from within your Mendix application and will only be loaded while the app is open.

If you specify the --enable-extension-development flag, you can debug your extension by placing it into a new subfolder within your app directory. The format of the folder must be <Mendix app folder>\extensions\<your extension name> where all extensions that you want to load must exist inside the <Mendix app folder>\extensions subfolder.

Studio Pro will only load your extension if it complies with the following rules:

  • Your extension needs to provide a manifest.json file.

  • This manifest file must contain a list of entry points for your extension. For example:

    {
        "mx_extensions": [ "MyExtension.dll" ]
    }