NuPattern is a tool that helps you build tools... Don't repeat manual, automate!


Okay, enough with app build and such for a bit. How about a tool and helps you build tools for your favorite tool?



What is NuPattern?

NuPattern is the platform and tools that make it easy to create your own custom branded tooling in Visual Studio.

Spend six minutes watching the following video to understand what NuPattern is and how it can benefit you:

By now, you are probably used to seeing different vendors' tools and extensions in Visual Studio, some you like, and some offer little value to your project except perhaps in the initial phases. There is a reason these tools are very general purpose. But, have you ever considered using and building your own specific tools, or tools from others developers you follow, ones that create software the way you know you want it created for use of your specific projects? Such as how your organization or community builds their applications using agreed coding standards, project structures and architectural practices. No vendor can possibly build you those kinds of tools. NuPattern is the new framework and the tools that enable you to create your own tooling and automation that does exactly that for you and your projects.

Ever tried to create custom tools and templates in Visual Studio? It is impossibly hard, and few in the world can do can afford to do it. But no longer with NuPattern. Simply define a model of how you understand the features of your software, decorate that model with templates, automation and instructive guidance. Then NuPattern will automatically generate a new Visual Studio extension that you can post on a gallery and share with others, and you and your communities get the tools you always wanted.

A New Approach

Building 'Pattern Toolkits' is a new approach to adding productivity and consistency to your software development and deployment projects. Read more...

Where to get it?

From this site you can download and install the latest version of the tools from the 'Downloads' tab on this site.

From within Visual Studio you can search for, download, and install the tools from the Visual Studio Gallery, in the 'Online Gallery' tab of the 'Extension Manager' in Visual Studio.

What Is NuPattern?

The name NuPattern refers to the technology which builds and runs 'Pattern Toolkits'. Concretely, it is a collection of VS extensions to Visual Studio that together offer the experience of creating, and using Pattern Toolkits.

The NuPattern components as seen in the Visual Studio Extension Manager.

The following is the list of Visual Studio extensions (VSIXes) that can be installed and managed in Visual Studio:

  • NuPattern Toolkit Manager - This extension provides the automation framework, tools, windows, editors for loading and running pattern toolkits in Visual Studio.

    • It provides the persistence store for the instances of the patterns contained within the toolkits (called 'solution elements').
    • It provides Visual Studio services and a MEF API for manipulating pattern toolkits, and their solution elements.
    • It also provides the 'Solution Builder' tool window for displaying solution elements, and all the user interface elements for working with an installed pattern toolkit.
  • NuPattern Toolkit Builder - This extension provides the project templates, modeling designers, automation and extensive guidance for building 'Pattern Toolkit' projects in Visual Studio.

    • This extension is itself a 'Pattern Toolkit', and as such is used through the 'Solution Builder' window.
    • It provides solution elements in the 'Solution Builder', and guidance in the 'Guidance Explorer' tool windows to guide you through the creation of your own 'Pattern Toolkit' project.
    • When a 'Pattern Toolkit' is built, this extension generates a *.VSIX file that can be installed into Visual Studio to apply that pattern.
  • NuPattern Toolkit Library - This extension provides a project template, item templates and automation for creating your own custom automation in your own 'Pattern Toolkit' project.

    • This extension is itself a 'Pattern Toolkit', and as such is used through the 'Solution Builder' window.
    • This extension integrates with, and extends the 'Pattern Toolkit Builder' extension to provide an 'Automation Library' project for a 'Pattern Toolkit' project.
  • NuPattern Toolkit Builder Hands-On Labs - This extension provides a hands-on labs for guiding you through the process of creating your first 'Pattern Toolkit' projects.

    • It contains all the guidance and automation to create a 'Pattern Toolkit' project.
    • It is the recommended starting point for 'Pattern Toolkit' novices.

What's meta is that they use the tool to help you get started building tools...

Getting Started

This is where you learn how to get started building your own pattern toolkits.

If you have arrived here after installing NuPattern, and you have already built a toolkit with the previous version of VSPAT, then you need to migrate your old toolkits to use NuPattern. Please see the 'Release Notes' of the latest NuPattern release for how to do that. For toolkits built with later versions of NuPattern (i.e. or later) you may need to do some migration work on your toolkit project, so please see the 'Release Notes' of the current version of NuPattern you have installed

If you have never built a pattern toolkit before with NuPattern then we strongly recommend that you get familiar with what NuPattern is all about by installing and using the guided ‘Hands-On Lab’ (HOL) included with the latest NuPattern release.

Why the Hands-On Labs?

This interactive hands-on lab guides you through the process of building your first 'Pattern Toolkit' project, giving you a quick walkthrough of some of the most basic features of designing, building and packaging a sample toolkit. It gives you a good introduction, and some ideas about how you can build your own toolkit. Without doing the hands-on lab, you may be a little lost trying to create your first pattern toolkit project, and what they do.

If you just installed 'NuPattern', and you did install the 'Hands-On Labs' (either from the installer or separately) you are in great shape to get started now. Jump to Start The Lab


Creating the Hands-On Labs project



And best of all the entire source for everything that is NuPattern is available too...

The Discussion

  • User profile image

    With how popular powershell is I am suprized that Microsoft has not built cmdlets that allow you to automate VisualStudio

  • User profile image
    Michael Mueller

    Have you thought of adding to Chocolatey for easy install?

  • User profile image
    meyar aeini

    Greetings Greg,
    I'm using NuPattern. Currently I did just update to NuPattern to developing my tools in visual studio 2012.
    In version when I did assigning a template to 'NuPattern.Library.Commands.GenerateProductCodeCommand' then I did just see this error:

    NuPattern.Library.Design.TextTemplateUriEditor Error: 0 : Failed to edit file.
    System.ArgumentException: The solution element 'PatternToolkit3' must be contained in a project containing a VSIX manifest file marked with the 'IsToolkitManifest' MSBuild metadata.
    at NuPattern.VisualStudio.Solution.SolutionExtensions.GetToolkitManifest(IProject project)
    at NuPattern.VisualStudio.Solution.SolutionExtensions.GetToolkitManifest(IItemContainer element)
    at NuPattern.Library.Design.TextTemplateUriEditor.BuildUri(IItemContainer selectedItem)
    at NuPattern.Library.Design.TextTemplateUriEditor.<>c__DisplayClass4.<EditValue>b__3()
    at NuPattern.VisualStudio.TraceSourceExtensions.DoShield(ITracer traceSource, Action action, String format, Boolean showUI, String[] args)

    can you help me to debug this error?

  • User profile image

    @meyar aeini:The best bet to getting your answer is to contact the project directly. Click through to the project and post this on the Discussions,, and they will hopefully be able to help you.

Conversation locked

This conversation has been locked by the site admins. No new comments can be made.