---
title: "Custom Visual Studio Project Templates - Muhammad Rehan Saeed"
description: "A guide to creating custom Visual Studio project templates in .zip and VSIX form and submitting them to the Visual Studio Gallery, so it can be downloaded."
canonical_url: "https://rehansaeed.com/custom-visual-studio-project-templates/"
last_updated: "2014-12-10T00:00:00+00:00"
meta:
  author: "Muhammad Rehan Saeed"
  keywords: ".NET,ASP.NET MVC,ASP.NET Core Boilerplate,C#,Project Template,VSIX"
  "og:description": "A guide to creating custom Visual Studio project templates in .zip and VSIX form and submitting them to the Visual Studio Gallery, so it can be downloaded."
  "og:image": "https://rehansaeed.com/_og/s/o_990d016d582cce95.png"
  "og:image:alt": "Custom Visual Studio Project Templates - Muhammad Rehan Saeed"
  "og:image:height": "630"
  "og:image:type": image/png
  "og:image:width": "1200"
  "og:title": "Custom Visual Studio Project Templates"
  "twitter:image": "https://rehansaeed.com/_og/s/o_990d016d582cce95.png"
  "twitter:image:alt": "Custom Visual Studio Project Templates - Muhammad Rehan Saeed"
---

> Index of every page on this site: [llms.txt](https://rehansaeed.com/llms.txt)

# [Custom Visual Studio Project Templates](https://rehansaeed.com/custom-visual-studio-project-templates/)

Posted 10 December 2014 - **7 min read**

![Visual Studio](https://rehansaeed.com/_ipx/f_png&s_2560x1440/images/hero/Visual-Studio-1366x768.png)

Creating a custom Visual Studio project template that you can use from the 'New Project' dialogue is a great way to reduce the amount of repetitive code you have to write. It gets you running through the jungle with the leaves brushing against your face, instead of sitting at the starting block wondering where your shoes are.

The [Visual Studio Gallery](https://visualstudiogallery.msdn.microsoft.com) is a great place to share your custom Visual Studio project template with the community. There are actually two ways to create a template. I recently had to create one for [ASP.NET Core Boilerplate](https://visualstudiogallery.msdn.microsoft.com/6cf50a48-fc1e-4eaf-9e82-0b2a6705ca7d) and found it less than simple. This post talks you through creating one and submitting it to the Visual Studio Gallery, allowing anyone to use it from the 'New Project' dialogue.

![The project template shown in the 'Web' section of Visual Studio's 'New Project' dialogue.](https://rehansaeed.com/_ipx/f_png&s_1910x1320/content-images/posts/2014/custom-visual-studio-project-templates/images/VisualStudioGallery2.png)

The project template shown in the 'Web' section of Visual Studio's 'New Project' dialogue.

# Export Template as .zip Link to this section

The first method of creating a custom project template is to use the 'Export Template' wizard in Visual Studio, as shown in the steps below, you can create a `.zip` file which contains a template of your selected project.

![Export .zip Project Template](https://rehansaeed.com/_ipx/f_png&s_640x812/content-images/posts/2014/custom-visual-studio-project-templates/images/ExportTemplate1.png)

The Visual Studio Export Template menu item for exporting a `.zip` project template.

The wizard allows you to select the project from your solution you want to export as a template.

![The export template 'Choose template type' screen.](https://rehansaeed.com/_ipx/f_png&s_1442x1106/content-images/posts/2014/custom-visual-studio-project-templates/images/ExportTemplate2.png)

The export template 'Choose template type' screen.

You can even specify an icon and preview image of the project template. This is perfect as this information also gets displayed in the Visual Studio 'New Project' dialogue.

![The export template 'Select template options' screen, where you can describe your template.](https://rehansaeed.com/_ipx/f_png&s_1442x1106/content-images/posts/2014/custom-visual-studio-project-templates/images/ExportTemplate3.png)

The export template 'Select template options' screen, where you can describe your template.

The `.zip` file that is output must be copied into the following folder, for Visual Studio to pick it up:

```text
C:/Users/[Your User Name]/Documents/Visual Studio [2010|2012|2013|2015]/Templates/ProjectTemplates
```

![The .zip file output as part of the Visual Studio Export Template wizard.](https://rehansaeed.com/_ipx/f_png&s_1442x1106/content-images/posts/2014/custom-visual-studio-project-templates/images/ExportTemplate4.png)

The `.zip` file output as part of the Visual Studio Export Template wizard.

This is a super easy process and you should really consider creating your own templates if you find yourself making the same old changes to every project you are creating. The downside is that its not very customizable and these types of project templates cannot be submitted to the [Visual Studio Gallery](https://visualstudiogallery.msdn.microsoft.com).

The gallery website only supports project templates created using the VSIX package. Creating a VSIX package is a pretty involved process and will take a couple of hours.

# Export Template Wizard Extension Link to this section

[This](https://visualstudiogallery.msdn.microsoft.com/57320b20-34a2-42e4-b97e-e615c71aca24) Visual Studio extension claims to support exporting your projects into VSIX packages using a simple wizard interface. Unfortunately, this tool is only available for Visual Studio 2010 and the Microsoft developers of the extension seem to have stopped further development.

This is a real shame. Here we have an excellent tool which the community really needs. A tool that makes creating a VSIX project template package, a matter of a few clicks. This should be built into Visual Studio out of the box!

# SideWaffle Project Templates Link to this section

There is even an alternative method of creating project templates and sharing them with the community that I should mention. It's called [SideWaffle](http://sidewaffle.com) (I like the name for some reason). It makes it slightly easier to create a template but its still not as simple as a few clicks. It's certainly something worth taking a look at though.

# Creating a VSIX Package Link to this section

The first step is to create a `.zip` project template package using the steps above. Once you've done that, download and install the [Microsoft Visual Studio 2013 SDK](https://www.microsoft.com/en-us/download/details.aspx?id=40758). This will give you new project templates to create VSIX packages. The first thing to do is create a new C# Project Template (Or a Visual Basic one if you prefer).

![The new project dialogue, showing how to create a new VSIX C# project.](https://rehansaeed.com/_ipx/f_png&s_1910x1320/content-images/posts/2014/custom-visual-studio-project-templates/images/ExportVSIX1.png)

The new project dialogue, showing how to create a new VSIX C# project.

The next step is to open the `.zip` version of your project template and copy the contents into your new project. Copy everything (Including the project file), except the 'Properties' folder as this will conflict with the existing one in the project.

![An example of a VSIX C# project from the ASP.NET Core Boilerplate project template.](https://rehansaeed.com/_ipx/f_png&s_538x1174/content-images/posts/2014/custom-visual-studio-project-templates/images/ExportVSIX2.png)

An example of a VSIX C# project from the ASP.NET Core Boilerplate project template.

Select all the files in the project and in the properties window, ensure that their 'Build Action' is set to 'Content'.

![The properties window for a file in a VSIX C# project. Note, that the file build action has been set to 'Content'.](https://rehansaeed.com/_ipx/f_png&s_790x646/content-images/posts/2014/custom-visual-studio-project-templates/images/ExportVSIX3.png)

The properties window for a file in a VSIX C# project. Note, that the file build action has been set to 'Content'.

The `.vstemplate` file in the project contains all the information about the contents of the project template. If you select it and go to the 'Properties' window, you can set the 'Category' property which determines where your project template will appear in the 'New Project' dialogue.

![The category a VSIX C# project is displayed under, in the Visual Studio New Project dialogue.](https://rehansaeed.com/_ipx/f_png&s_790x764/content-images/posts/2014/custom-visual-studio-project-templates/images/ExportVSIX4.png)

The category a VSIX C# project is displayed under, in the Visual Studio New Project dialogue.

An example of the `.vstemplate` file is shown below. Note, that I've set the project template name, description and the default name of the project which is shown in the 'New Project' dialogue and the user can rename. The XML then goes on to declare the name of the `.csproj` file in the `Project` node, followed by each and every file and folder to be included in the template.

Note, that the `AssemblyInfo.cs` file is a little special. There are two of them in the project. The one we are interested in was already located in the root of the project when we created it. We also need to add it to the XML below slightly differently than the other files (See below).

You can use the `OpenInWebBrowser` or `OpenInEditor` attributes on a `ProjectItem` to get the file to be opened in a web browser or text editor when the project is first created. I've used `OpenInWebBrowser` to open the `ReadMe.html` file containing basic information about the project, when the project is first created.

```xml
<?xml version="1.0" encoding="utf-8"?>
<VSTemplate Version="3.0.0" Type="Project" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" xmlns:sdk="http://schemas.microsoft.com/developer/vstemplate-sdkextension/2010">
  <TemplateData>
    <Name>ASP.NET Core Boilerplate</Name>
    <Description>A professional ASP.NET MVC template for building secure, fast, robust and adaptable web applications or sites. It provides the minimum amount of code required on top of the default MVC template provided by Microsoft. Find out more at RehanSaeed.com</Description>
    <Icon>MvcBoilerplateTemplate.ico</Icon>
    <ProjectType>CSharp</ProjectType>
    <RequiredFrameworkVersion>4.5</RequiredFrameworkVersion>
    <SortOrder>1000</SortOrder>
    <TemplateID>f2d50b53-cff3-41b4-8481-dac14c18ea48</TemplateID>
    <CreateNewFolder>true</CreateNewFolder>
    <DefaultName>WebProject</DefaultName>
    <ProvideDefaultName>true</ProvideDefaultName>
  </TemplateData>
  <TemplateContent>
    <Project File="MvcBoilerplate.csproj" ReplaceParameters="true">
      <ProjectItem ReplaceParameters="true" TargetFileName="Properties%5CAssemblyInfo.cs">AssemblyInfo.cs</ProjectItem>
      <Folder Name="App_Start">
        <ProjectItem ReplaceParameters="true" OpenInEditor="false">BundleConfig.cs</ProjectItem>
        <ProjectItem ReplaceParameters="true" OpenInEditor="false">FilterConfig.cs</ProjectItem>
        <ProjectItem ReplaceParameters="true" OpenInEditor="false">RouteConfig.cs</ProjectItem>
        <ProjectItem ReplaceParameters="true" OpenInEditor="false">Startup.Container.cs</ProjectItem>
      </Folder>
      <!-- Omitted lots of Folder and ProjectItem nodes... -->
      <ProjectItem ReplaceParameters="true" OpenInWebBrowser="true">ReadMe.html</ProjectItem>
    </Project>
  </TemplateContent>
</VSTemplate>
```

The next step is to add a VSIX Project to our solution. This is the project that will actually build a `.vsix` file.

![The new project dialogue, showing how to create a new VSIX project.](https://rehansaeed.com/_ipx/f_png&s_1910x1320/content-images/posts/2014/custom-visual-studio-project-templates/images/ExportVSIX5.png)

The new project dialogue, showing how to create a new VSIX project.

If you open the `.vsixmanifest` file, you can fill in basic information about the template. This information will be displayed in the 'New Project' dialogue. I have specified an Icon, Preview Image and Licence file. All three of these files are added to the project.

![The metadata for the VSIX project, describing the .vsix installer file and also the project shown in the solution explorer, showing the files included.](https://rehansaeed.com/_ipx/f_png&s_2560x2042/content-images/posts/2014/custom-visual-studio-project-templates/images/ExportVSIX6.png)

The metadata for the VSIX project, describing the `.vsix` installer file and also the project shown in the solution explorer, showing the files included.

The 'Install Targets' tab lets you target a specific version of Visual Studio. I changed this to support Visual Studio 2012 and above by specifying the version range to be `[11.0,]`. More information [here](http://blogs.msdn.com/b/visualstudio/archive/2013/08/08/update-for-extension-authors-vsix-manifest-version-ranges.aspx).

The 'Dependencies' tab is very similar. Here you can specify which version of the .NET Framework your project depends on. I stuck with the defaults of .NET 4.5 only.

![The installation targets or versions of Visual Studio your VSIX extension will install to.](https://rehansaeed.com/_ipx/f_png&s_2560x2042/content-images/posts/2014/custom-visual-studio-project-templates/images/ExportVSIX7.png)

The installation targets or versions of Visual Studio your VSIX extension will install to.

If you click on the 'Assets' tab on the left, you can add a reference to your other 'C# Project Template' project.

![The VSIX C# projects you want to add to the VSIX extension as an asset to be installed.](https://rehansaeed.com/_ipx/f_png&s_2560x2042/content-images/posts/2014/custom-visual-studio-project-templates/images/ExportVSIX8.png)

The VSIX C# projects you want to add to the VSIX extension as an asset to be installed.

# Submitting your VSIX Project Template to the Visual Studio Gallery Link to this section

Submitting your new VSIX extension to the Visual Studio Gallery is a great way to share your new Project Template with the world. The [ASP.NET Core Boilerplate](https://visualstudiogallery.msdn.microsoft.com/6cf50a48-fc1e-4eaf-9e82-0b2a6705ca7d) extension now has over a hundred downloads within two days of submitting it!

If you've followed the steps above to create a VSIX package and tested that it works correctly then submitting one to the site is really easy. Follow [this](https://visualstudiogallery.msdn.microsoft.com/site/upload/view) link to the submission page and fill in the form. An example of what it looks like can be seen below:

![An example of the Visual Studio Gallery Submission Page.](https://rehansaeed.com/_ipx/f_png&s_1920x3186/content-images/posts/2014/custom-visual-studio-project-templates/images/VisualStudioGallery1.png)

An example of the Visual Studio Gallery Submission Page.

Once you have made your submission and you go to the 'New Project' dialogue, you can go to the 'Online' section and see your project template listed.

![The project template shown in the 'Web' section of Visual Studio's 'New Project' dialogue.](https://rehansaeed.com/_ipx/f_png&s_1910x1320/content-images/posts/2014/custom-visual-studio-project-templates/images/VisualStudioGallery2.png)

The project template shown in the 'Web' section of Visual Studio's 'New Project' dialogue.

If you use the template above, explicitly install it from the Visual Studio Gallery or install it from 'Extensions and Updates', you will then see the project appear in the 'New Project' dialogue under the category you specified in the settings above.

![The project template shown in the 'Online' section of Visual Studio's 'New Project' dialogue.](https://rehansaeed.com/_ipx/f_png&s_1910x1320/content-images/posts/2014/custom-visual-studio-project-templates/images/VisualStudioGallery3.png)

The project template shown in the 'Online' section of Visual Studio's 'New Project' dialogue.

# Conclusions Link to this section

Creating a simple `.zip` project template is super simple and something everyone should know and use for larger projects. Creating VSIX project templates is a lot more involved but to be honest, there is no reason why it should be. I hope Microsoft makes this process a lot easier.

## Web Mentions

[What's this?](https://en.wikipedia.org/wiki/Webmention)

### 0 Linked

### 0 Replies

## GitHub Comments

### 6 Comments

[Comment on GitHub](https://github.com/RehanSaeed/rehansaeed.github.io/issues/70)

[![RehanSaeed](https://avatars.githubusercontent.com/u/2270364?v=4)](https://github.com/RehanSaeed)

### [RehanSaeed](https://github.com/RehanSaeed)

Owner

12 May 2020

[![B. Clay Shannon](https://camo.githubusercontent.com/d2ff808bc8657a936631334322e2ee81c841e85827df39c300d378294db6e9a0/68747470733a2f2f7777772e67726176617461722e636f6d2f6176617461722f33313766346236326461326230313836666561633962363230393739333530353f733d393626643d6d6d26723d67)](https://camo.githubusercontent.com/d2ff808bc8657a936631334322e2ee81c841e85827df39c300d378294db6e9a0/68747470733a2f2f7777772e67726176617461722e636f6d2f6176617461722f33313766346236326461326230313836666561633962363230393739333530353f733d393626643d6d6d26723d67) **[B. Clay Shannon](http://apps.microsoft.com/windows/en-us/app/photrax/75c18e6c-96bd-4607-ac43-531aab098ab4)** commented on **2014-12-12 15:43:53**

Is it possible to create a project template that has Nuget packages added (such as for Bing Maps, SQlite, sqlite-net, etc.)?

BTW, I like your retro sci-fi font.

[![RehanSaeed](https://avatars.githubusercontent.com/u/2270364?v=4)](https://github.com/RehanSaeed)

### [RehanSaeed](https://github.com/RehanSaeed)

Owner

12 May 2020

[![Rehan](https://camo.githubusercontent.com/8a07049df41b8a3839a3f4342f09ea8e6e7fa0065667687f04beca2d088a1dca/68747470733a2f2f7777772e67726176617461722e636f6d2f6176617461722f32623266393030653361633066353535316462646537323864336262343935343f733d393626643d6d6d26723d67)](https://camo.githubusercontent.com/8a07049df41b8a3839a3f4342f09ea8e6e7fa0065667687f04beca2d088a1dca/68747470733a2f2f7777772e67726176617461722e636f6d2f6176617461722f32623266393030653361633066353535316462646537323864336262343935343f733d393626643d6d6d26723d67) **[Rehan](https://rehansaeed.com/)** commented on **2014-12-12 16:25:14**

> Is it possible to create a project template that has Nuget packages added (such as for Bing Maps, SQlite, sqlite-net, etc.)?
>
> BTW, I like your retro sci-fi font.

Of course it is. You don't need to include the NuGet packages themselves. The key is the packages.config file, you just need to include it in your project template. When Visual Studio first loads the project and sees the NuGet packages installed from the packages.config but does not see that they are loaded, it will download them all for you.

If you want an example, go ahead and download the code for [ASP.NET Core Boilerplate](https://github.com/Dotnet-Boxed/Templates) (It's very simple, only three projects). You can set the bottom VSIX project as the startup project, hit F5 to start and see what happens.

Thanks for the comment about the font, I added it because it's unusual.

Good Luck!

[![RehanSaeed](https://avatars.githubusercontent.com/u/2270364?v=4)](https://github.com/RehanSaeed)

### [RehanSaeed](https://github.com/RehanSaeed)

Owner

12 May 2020

[![Data Juggler](https://camo.githubusercontent.com/83fdadf1b910e4e55ddbe78677b871f913d2b936a2f67007e0c40dad4c0c735c/68747470733a2f2f7777772e67726176617461722e636f6d2f6176617461722f33653038363939653362343738633361373838376333393931646336316264363f733d393626643d6d6d26723d67)](https://camo.githubusercontent.com/83fdadf1b910e4e55ddbe78677b871f913d2b936a2f67007e0c40dad4c0c735c/68747470733a2f2f7777772e67726176617461722e636f6d2f6176617461722f33653038363939653362343738633361373838376333393931646336316264363f733d393626643d6d6d26723d67) **[Data Juggler](http://www.datajuggler.com/)** commented on **2014-12-18 22:29:58**

Thanks for the article; I watched the video on the Side Waffle site; is Side Waffle similar to Nuget? It looks like it does the same thing.

If you want to do a part 2 on 'Working With Multiple Projects and Solution Folders', it is always a pain for me to set them up; it has been on my to do list to build a Package Deployment solution for multiple projects for a long time; It seems to take me forever to export one of our solutions that contains over a dozen projects.

[![RehanSaeed](https://avatars.githubusercontent.com/u/2270364?v=4)](https://github.com/RehanSaeed)

### [RehanSaeed](https://github.com/RehanSaeed)

Owner

12 May 2020

[![Rehan](https://camo.githubusercontent.com/8a07049df41b8a3839a3f4342f09ea8e6e7fa0065667687f04beca2d088a1dca/68747470733a2f2f7777772e67726176617461722e636f6d2f6176617461722f32623266393030653361633066353535316462646537323864336262343935343f733d393626643d6d6d26723d67)](https://camo.githubusercontent.com/8a07049df41b8a3839a3f4342f09ea8e6e7fa0065667687f04beca2d088a1dca/68747470733a2f2f7777772e67726176617461722e636f6d2f6176617461722f32623266393030653361633066353535316462646537323864336262343935343f733d393626643d6d6d26723d67) **[Rehan](https://rehansaeed.com/)** commented on **2014-12-19 07:17:16**

> Thanks for the article; I watched the video on the Side Waffle site; is Side Waffle similar to Nuget? It looks like it does the same thing.
>
> If you want to do a part 2 on 'Working With Multiple Projects and Solution Folders', it is always a pain for me to set them up; it has been on my to do list to build a Package Deployment solution for multiple projects for a long time; It seems to take me forever to export one of our solutions that contains over a dozen projects.

I'm no expert but SideWaffle seems to be an alternative to the Visual Studio Gallery. You install the SideWaffle extension and you get some project templates and item templates added to your 'New Project' dialogue.

I haven't looked into doing multiple projects in one project template yet but in theory it should be pretty easy. There is a special project XML node in the .vstemplate file that you need to use. If you want to do multiple project **templates** in one extension, then that is super easy. You just need to create a new C# VSIX Project, follow my instructions for it and add it as another reference in the VSIX project. Not sure if I'll write another article, this one was a by-product of having to create a VSIX for the ASP.NET Core Boilerplate project I'm working on. I just found it really hard to find any good up to date articles on the subject, so naturally I wrote a blog post.

[![RehanSaeed](https://avatars.githubusercontent.com/u/2270364?v=4)](https://github.com/RehanSaeed)

### [RehanSaeed](https://github.com/RehanSaeed)

Owner

12 May 2020

[![Anand](https://camo.githubusercontent.com/786ba7334bfc4db7dd38766c050a337ff5832bf49dc4ceba0db6f5abcb707bcc/68747470733a2f2f7777772e67726176617461722e636f6d2f6176617461722f64303963316237343762313766396437376463366566376465383630303536333f733d393626643d6d6d26723d67)](https://camo.githubusercontent.com/786ba7334bfc4db7dd38766c050a337ff5832bf49dc4ceba0db6f5abcb707bcc/68747470733a2f2f7777772e67726176617461722e636f6d2f6176617461722f64303963316237343762313766396437376463366566376465383630303536333f733d393626643d6d6d26723d67) **Anand** commented on **2017-04-05 20:44:42**

Hi,  
 I have a project template created but I'm trying to explore the option to have this converted as nuget package. the idea is that next person has to just get the nuget and basic project skeleton will be set. Is it possible?

[![RehanSaeed](https://avatars.githubusercontent.com/u/2270364?v=4)](https://github.com/RehanSaeed)

### [RehanSaeed](https://github.com/RehanSaeed)

Owner

12 May 2020

[![Rehan](https://camo.githubusercontent.com/8a07049df41b8a3839a3f4342f09ea8e6e7fa0065667687f04beca2d088a1dca/68747470733a2f2f7777772e67726176617461722e636f6d2f6176617461722f32623266393030653361633066353535316462646537323864336262343935343f733d393626643d6d6d26723d67)](https://camo.githubusercontent.com/8a07049df41b8a3839a3f4342f09ea8e6e7fa0065667687f04beca2d088a1dca/68747470733a2f2f7777772e67726176617461722e636f6d2f6176617461722f32623266393030653361633066353535316462646537323864336262343935343f733d393626643d6d6d26723d67) **[Rehan](https://rehansaeed.com/)** commented on **2017-04-08 08:46:37**

> Hi,  
>  I have a project template created but I'm trying to explore the option to have this converted as nuget package. the idea is that next person has to just get the nuget and basic project skeleton will be set. Is it possible?

It is with [dotnet new](https://rehansaeed.com/custom-project-templates-using-dotnet-new/) based project templates.

```json
{"@context":"https://schema.org","@graph":[{"@id":"https://rehansaeed.com/#website","@type":"WebSite","description":"Software Developer at Microsoft, YouTuber, Open Source Contributor and Blogger","inLanguage":"en-GB","name":"Muhammad Rehan Saeed","url":"https://rehansaeed.com/","author":{"@id":"https://rehansaeed.com/#identity"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://rehansaeed.com/?search={search_term_string}"},"query-input":"required name=search_term_string"}],"publisher":{"@id":"https://rehansaeed.com/#publisher"}},{"@id":"https://rehansaeed.com/custom-visual-studio-project-templates/#webpage","@type":"WebPage","dateModified":"2014-12-10T00:00:00+00:00","datePublished":"2014-12-10T00:00:00+00:00","description":"A guide to creating custom Visual Studio project templates in .zip and VSIX form and submitting them to the Visual Studio Gallery, so it can be downloaded.","name":"Custom Visual Studio Project Templates","url":"https://rehansaeed.com/custom-visual-studio-project-templates/","breadcrumb":{"@id":"https://rehansaeed.com/custom-visual-studio-project-templates/#breadcrumb"},"isPartOf":{"@id":"https://rehansaeed.com/#website"},"potentialAction":[{"@type":"ReadAction","target":["https://rehansaeed.com/custom-visual-studio-project-templates/"]}]},{"@id":"https://rehansaeed.com/#identity","@type":"Person","name":"Muhammad Rehan Saeed","url":"https://rehansaeed.com/about/","image":{"@id":"https://rehansaeed.com/#/schema/image/1"},"sameAs":["https://github.com/RehanSaeed","https://www.linkedin.com/in/muhammad-rehan-saeed","https://stackoverflow.com/users/1212017/muhammad-rehan-saeed","https://www.youtube.com/c/MuhammadRehanSaeed","https://www.twitch.tv/rehansaeeduk"]},{"@id":"https://rehansaeed.com/#publisher","@type":"Organization","logo":"https://rehansaeed.com/images/schema/Publisher-600x60.png","name":"Muhammad Rehan Saeed","url":"https://rehansaeed.com"},{"@id":"https://rehansaeed.com/custom-visual-studio-project-templates/#article","@type":"Article","dateModified":"2014-12-10T00:00:00+00:00","datePublished":"2014-12-10T00:00:00+00:00","description":"A guide to creating custom Visual Studio project templates in .zip and VSIX form and submitting them to the Visual Studio Gallery, so it can be downloaded.","headline":"Custom Visual Studio Project Templates","inLanguage":"en-GB","url":"https://rehansaeed.com/custom-visual-studio-project-templates/","author":{"@id":"https://rehansaeed.com/#identity"},"image":[{"@type":"ImageObject","url":"https://rehansaeed.com/images/hero/Visual-Studio-1366x768.png","caption":"Visual Studio","width":"1366","height":"768"}],"isPartOf":{"@id":"https://rehansaeed.com/custom-visual-studio-project-templates/#webpage"},"keywords":[".NET","ASP.NET MVC","ASP.NET Core Boilerplate","C#","Project Template","VSIX"],"mainEntityOfPage":{"@id":"https://rehansaeed.com/custom-visual-studio-project-templates/#webpage"},"publisher":{"@id":"https://rehansaeed.com/#publisher"}},{"@id":"https://rehansaeed.com/custom-visual-studio-project-templates/#breadcrumb","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","name":"Blog","item":"https://rehansaeed.com/","position":1},{"@type":"ListItem","name":"Custom Visual Studio Project Templates","item":"https://rehansaeed.com/custom-visual-studio-project-templates/","position":2}]},{"@id":"https://rehansaeed.com/#/schema/image/1","@type":"ImageObject","contentUrl":"https://rehansaeed.com/images/author/Muhammad-Rehan-Saeed/Logo-512x512.png","inLanguage":"en-GB","url":"https://rehansaeed.com/images/author/Muhammad-Rehan-Saeed/Logo-512x512.png"}]}
```

## Sitemap

See the full [sitemap](https://rehansaeed.com/sitemap.md) for all pages.
