Azure Infrastructure Tools

Our no-code, drag-and-drop desktop tools help you build ARM Templates (SOLO) and UI Definitions (ENSEMBLE) for your Azure Applications

Maestro Studio Products

Click on each Maestro Studio product below to learn more about its unique benefits, features and how to get it.

Maestro Studio Ensemble

User Personas/Scenarios:

First-time Publisher

Existing Single-VM Publisher

Existing Azure Application Publisher

Maestro Studio Solo

Primary Scenario:

Deployment Architect

ENSEMBLE Benefits Compared to Current Processes & Tools

What other options are there for Software Vendors to create and publish Azure Applications (Solution Templates or Managed Applications) besides Maestro Studio ENSEMBLE?

The following is a comparison between the process suggested by Microsoft vs using Maestro Studio ENSEMBLE:

Process Suggested by Microsoft

  • Use multiple tools: JSON Editor, Sandbox, ARM-TTK, online docs and videos
  • Dev Duration Time: 3 to 6 months
  • Technical Skills Needed
  • No end-to-end testing and validation
  • No way to test for anomalies once your offer is in production
Maestro Studio Ensemble

  • ONE tool
  • Dev Duration Time: Minutes – ENSEMBLE saves you up to 95% of development time and many headaches along the way
  • No Technical Skills Needed – ENSEMBLE is a visual, drag-and-drop application
  • End-to-end testing and validation against Azure Marketplace rules – saving you hours and hours of troubleshooting and iterations
  • ENSEMBLE allows you to import your offer plans in production to validate for simple or fatal errors in production

The difference is clear – you decide what option is better for your organization.
Click on one of the cards above to learn more about ENSEMBLE & SOLO.

Frequently Asked Questions

Many ISVs seem to be led to believe that everyone should be publishing their solution to the Azure Marketplace as a SaaS offer. Unfortunately, this is an illusion. The fact is that Azure Applications are the backbone of anything that is built on Azure, including SaaS. Let's find out how, shall we?

If you have ever used the Azure Portal to create a resource, a VM for example, then you've certainly used an Azure Application. In this case, it would have very likely been a first-party Azure Application, developed by Microsoft.

The same mechanism that Microsoft uses to build first-party Azure Applications (VM, networking, storage, and other resources) is available to Azure Marketplace publishers, allowing them to build customized solutions that utilize various first-party Azure resources and integrate them together to provide a complete custom solution, your own Azure Application!

Many ISVs cannot publish their software solution as a SaaS offer (because not everything can be a SaaS offer). For example, Cisco offer their network appliances as Azure Applications that customers can deploy in their own subscriptions, just like they do with a first-party Microsoft resource. These kind of solutions, and many others that have similar requirements, usually cannot be sold as SaaS running in Cisco's Azure account (or tenant), at least not without a unnecessary effort to re-architect them. So, the bottom line is that customers have to have them running in their own account.

Unfortunately, the low-code framework Microsoft provides for building Azure Applications is based on creating text files formatted as JSON which require special expertise to create, test and manage since there are no good editors (other than generic JSON editors, like Visual Studio Code) that can understand Azure's JSON structure. That's why it takes, on average, between 3 and 6 months to get an Azure Application listed on the Azure Marketplace. And the majority of that time is spent on the technical assets1 (those JSON files) rather than on the other aspects of creating an Azure Application offer.

Maestro Studio ENSEMBLE reduces the time to create and publish an Azure Application down to hours (or days for some large applications) by providing an easy-to-use product that requires no special experience for building, end-to-end testing and publishing of Azure Applications on time and under budget.

1  It is worth mentioning that the JSON format is not really the biggest obstacle. To make Azure Applications interactive (a powerful feature of the low-code framework) requires utilizing expressions. Expressions combine one or more functions (similar to Excel functions) to perform actions based on certain conditions, or to just perform calculations or some massaging of input data.

Expressions involving non-trivial logic can become difficult and frustrating to manage. The most frustrating issue is what we call parentheses hell, where you lose track of the number of parenthesis and miss some. ENSEMBLE solves this problem using its built-in static analyzer to ensure every expression is evaluated and corrected where needed.

Yes, for sure! No one wants to be known as the CrowdStrike of the Azure Marketplace.

Based on our analysis of the thousands of published Azure Application offers in the Azure Marketplace1, we've noticed that 1 in 8 offers has a logic error in the technical assets.

While logic errors in Azure Applications might not have the same impact as the CrowdStrike logic error that caused a global outage, they do tend to cause unexpected issues and sometimes exhibit non-deterministic behavior that is difficult to troubleshoot. Afterall, they impact the logic of the application.

ENSEMBLE's built-in static analysis pinpoints logic errors so they're easy to fix. See this video for a real example from the Marketplace and how to fix it.
Logic Error Screenshot

1  Using ENSEMBLE's built-in Azure Application picker which allows you to select any Azure Application offer that is live in the Azure Marketplace and load its technical assets into ENSEMBLE's Design Canvas.

Yes! Maestro Studio ENSEMBLE allows you to import your Azure Application’s technical assets from a .zip file. Remember, all Azure applications must include two files in the root folder of a .zip archive: an ARM template (mainTemplate.json) and the UI definition (createUiDefinition.json). ENSEMBLE will import all technical assets from the .zip file, including the optional View Definition file, (viewDefinition.json), for Managed Apps.

Maestro Studio ENSEMBLE simplifies this process, making it easier for ISVs, MSPs, and SIs to create custom UIs for Azure Applications.

No problem! Just import your offer in production from the Marketplace directly into ENSEMBLE.

To import your Azure Marketplace offer into Maestro Studio ENSEMBLE, use ENSEMBLE’s Azure Marketplace Picker Dialog, use it to filter and select your specific offer and plan. Then, click a button to automatically import and visually render it into ENSEMBLE's visual designer. You can get to the Azure Marketplace Picker Dialog from the Import from Azure Markeplace Quickstart Template or from the Import from Marketplace icon on the top Menu bar of the UI.

Watch this short YouTube video for a quick walkthrough of this simple process.  

Absolutely! You can customize your VM offer from the Azure Marketplace using Maestro Studio ENSEMBLE.

ENSEMBLE allows you to visually customize the UI for your VM offer. You can lift-and-shift your VM from Azure’s stock UI into an Azure Application with a UI that you own and can easily modify. You can do that in three easy steps:

  1. Choose the appropriate Quickstart template from the Single VM Publisher section under Quickstart Templates.
  2. Choose your VM image from the VM Image Picker window.
  3. Preview and Publish.

And you’re done! This whole exercise takes a couple of minutes, max.

Maestro Studio ENSEMBLE can significantly enhance your Azure Application’s UI by simplifying expression handling and troubleshooting. Here’s how:

  1. Visual Expressions: Ensemble provides a visual expression editor that allows you to create and manage expressions without writing code. You can bind UI elements to data sources (like changes in other elements or results from an ARM API call), perform calculations, and create dynamic behavior—all visually.
  2. Troubleshooting Made Easy: ENSEMBLE’s visual approach makes it simpler to identify issues in your expressions. You can see the flow of data and easily debug any errors directly within the designer.
  3. Reusable Expressions: ENSEMBLE lets you create reusable expressions that can be shared across different UI elements. This promotes consistency and reduces redundancy.

Feel free to explore these features and transform your bland UI into an engaging and dynamic experience!

Yes, Maestro Studio ENSEMBLE enables end-to-end testing.

ENSEMBLE enables end-to-end testing of the custom UI + ARM template before publishing to the Azure Marketplace.

A special CreateUiDefinition (CUID) sandbox is embedded in Maestro Studio ENSEMBLE along with an auto-preview feature to allow viewing the results of any changes made on-the-fly, in real-time. The preview shows exactly how the UI will look in the Azure Marketplace.

Validation starts the second a CUID file is imported or created from an existing template. There is no need to remember to do it after the fact or run any tools. The CUID validation test cases that arm-ttk implements are automatically included in ENSEMBLE.

ENSEMBLE ensures that your CUID file is always valid, even at the embedded expression level, using real-time validation, static analysis and just-in-time (JIT) evaluation of expressions.