This repository is copied and modified from the Azure DevOps Extension Sample repository that provides guidance on how to create ADO extensions.
This repository generates an Azure DevOps extension that renders a preview tab for gherkin(.feature) files in Azure DevOps Repos.
The repository depends on a few Azure DevOps packages:
- azure-devops-extension-sdk: Required module for Azure DevOps extensions which allows communication between the host page and the extension iframe.
- azure-devops-extension-api: Contains REST client libraries for the various Azure DevOps feature areas.
- azure-devops-ui: UI library containing the React components used in the Azure DevOps web UI.
Some external dependencies:
React
- Is used to render the UI in the samples, and is a dependency ofazure-devops-ui
.TypeScript
- Samples are written in TypeScript and compiled to JavaScriptSASS
- Extension samples are styled using SASS (which is compiled to CSS and delivered in webpack js bundles).webpack
- Is used to gather dependencies into a single javascript bundle for each sample.
Just run:
npm run build
This produces a .vsix file which can be uploaded to the Visual Studio Marketplace
The preferred way to get started is to use the tfx extension init
command which will clone from this sample and prompt you for replacement information (like your publisher id). Just run:
npm install -g tfx-cli
tfx extension init
You can also clone the sample project and change the publisher
property in azure-devops-extension.json
to your own Marketplace publisher id. Refer to the online documentation for setting up your own publisher and publishing an extension.
The full set of documentation for developing extensions can be found at https://docs.microsoft.com/en-us/azure/devops/extend.