Create a gist now

Instantly share code, notes, and snippets.

Embed
What would you like to do?
VS extension checklist

Visual Studio Extension Checklist

Here is a list of things to make sure to remember before publishing your Visual Studio extension.

Adhere to best practices

Add the Microsoft.VisualStudio.SDK.Analyzers NuGet package to your VSIX project, which will help you discover and fix common violations of best practices

Add high-quality icon

All extensions should have an icon associated with it. Make sure the icon is a high-quality .png file with the size 128x128 pixels in 96 DPI or more. After adding the icon to your VSIX project, register it in the .vsixmanifest file as both the Icon and Preview image.

Add license

This license will be shown on the Marketplace, in the VSIX installer and in the Extensions and Updates... dialog. One should always be specified to set the expectations for the users. Use choosealicense.com to help find the right license for you.

Write good Marketplace description

This is one of the most important things you should do to make your extension successful. A good description consist of:

  • Screenshots/animated GIFs of the UI added by the extension
  • Detailed description of the individual features
  • Links to more details if applicable

Show in Help/About

All extensions can be present in the Help -> About Microsoft Visual Studio dialog box. To do that, add an InstalledProductRegistration attribute to you Package class and make sure the name, description and version are accurate.

[InstalledProductRegistration("The name", "The description", "1.0")]
public class MyPackage : AsyncPackage
{
   ...
}

Use KnownMonikers when possible

Visual Studio ships with thousands of icons which are available in the KnownMonikers collection. When adding icons to command buttons, see if you can use the existing KnownMonikers icons since they are part of a design language familiar to the Visual Studio users. Here's a full list of KnownMonikers and grab the KnownMonikers Explorer extension to find the right one for your scenarios.

@SQL-MisterMagoo

This comment has been minimized.

Show comment
Hide comment
@SQL-MisterMagoo

SQL-MisterMagoo May 4, 2018

"Show in Help/About" - is there something equivalent for MEF editor extensions - where there is no Package?

"Show in Help/About" - is there something equivalent for MEF editor extensions - where there is no Package?

@madskristensen

This comment has been minimized.

Show comment
Hide comment
@madskristensen

madskristensen May 4, 2018

There is not. Just add a package class to the MEF project

Owner

madskristensen commented May 4, 2018

There is not. Just add a package class to the MEF project

@justcla

This comment has been minimized.

Show comment
Hide comment
@justcla

justcla Jun 12, 2018

Add a ReleaseNotes.txt or, better yet, link to a ReleaseNotes / Readme on GitHub.

justcla commented Jun 12, 2018

Add a ReleaseNotes.txt or, better yet, link to a ReleaseNotes / Readme on GitHub.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment