CodeMaid is an open source Visual Studio extension to cleanup, dig through and simplify our C#, C++, F#, VB, PHP, JSON, XAML, XML, ASP, HTML, CSS, LESS, SCSS, JavaScript and TypeScript coding.

(201) Review
Visual Studio
2015, 2013, 2012, 2010
Download (580,161)
E-mail Twitter Digg Facebook
Add to favorites
Reviews (201)
Q and A (152)
Sign in to write a review
Sort by:

by Keizo Imaizumi | Fri 9:23 PM

Very nice extension, but somehow it would only remove lines (extra line at the end of file, duplicate blank lines etc), but won't add padding lines nor add explicit visibility modifiers in my c++ code. The respective settings are all on. Reinstalling CodeMaid didn't help... Visual Studio Community 2015

Steve Cadwallader Fri 9:33 PM
| Edit |

Unfortunately the Visual Studio API for C++ is not as rich as other languages like C# so not all features are supported. We have been thinking about making a language/feature matrix to help make that more clear - sorry for the confusion!

by Andrew Sanostee | Fri 7:55 PM

by Alex from Russia | Wed 6:22 AM

Perfect! A whole bunch of useful commands! And unlike ReSharper, it doesn't override native settings, which I've already customized.

Steve Cadwallader Fri 9:30 PM
| Edit |

Cool, glad to hear it is useful. :)

by João BP | October 06 2015

by drventure | September 17 2015

Very nice add in for VS2013.

The Code Spade tool alone is worth the download.

Steve Cadwallader Fri 9:29 PM
| Edit |

Glad to hear you like it. More Spade enhancements coming in the next major release! :)

by MujkicHaris | September 10 2015

Useful, time-saving and powerful.
Thank you so much for your hard work and dedication, developer!

Steve Cadwallader Fri 9:28 PM
| Edit |

You're very welcome! :)

by FernandoBraz | September 01 2015

Steve has made a wonderful work. Besides, it works perfectly with resharper.

Steve Cadwallader September 01 2015
| Edit |

Thank you. :) JetBrains provides us an open source license to use their tool during the development of CodeMaid, so we're more than happy to make sure we're very compatible together.

by nomen86 | August 26 2015

Nice extension, 5 stars for you CodeMaid.
Btw, does it have features to show how many reference I have on my method.
In VS 2013 when you write a method, a small link show on top of the method, tell us how many reference exist on that particular method. Here is the example :

3 references //this is what i mean.
public void ExampleMethod()
//some code here...!

Since I'm using Visual Studio 2012 Ultimate Edition (I don't want to upgrade to VS 2013 or VS 2015, because I'm still using Windows 7) that fitur is not available in Visual Studio 2012. Is there any extension or add-in so my VS 2012 could give me that fitur...?

Steve Cadwallader August 26 2015
| Edit |

I'm glad you like it.

The feature you're talking about is called CodeLens, and I haven't heard of anybody replicating it for VS2012.

by Sumonto | August 19 2015

Great handy tool!

by Ronan Phuc | August 12 2015

So amazing extension. Love it

by Akilram | August 02 2015

by dialexnunes | July 30 2015

by zeloran9 | July 24 2015

Excellent. Exactly what I was looking for.
The auto-formatting functionality removing extra new lines is awesome, and the VS default does not include that.

Steve Cadwallader July 26 2015
| Edit |

You're very welcome! :)

by HassanAli5502327 | July 22 2015

by Shaun Wilson [BC] | July 14 2015

by Akira Yamamoto | July 11 2015

by Kjetil Tonstad | June 24 2015

Very useful!

by Dylan777 | June 17 2015

Love this tool. Makes it so easy to keep code tidy. I really like the fast switch shortcut to switch between webpage and code behind files.

Thanks for your effort!

Steve Cadwallader June 18 2015
| Edit |

Awesome, thanks for the kind words. :)

by NirmanD | June 17 2015

Excellent tool

by lepine kong | June 06 2015

Could you fix bugs ? For example remove unused reference does not work like the native VS feature. It does not remove some references especially if reference is missing.

Steve Cadwallader June 07 2015
| Edit |

CodeMaid invokes the native VS remove unused references - they are the same feature.

If you have a specific bug you'd like for us to look into, please log it here:

1 - 20 of 201 Items   
Sign in to start a discussion

  • Code spade suggestions
    3 Posts | Last post September 17, 2015
    • Great addin, almost exactly what I was looking for.
      I had a couple suggestions in specific for the CodeSpade tool.
      1. When you press the hotkey to bring up the code spade, it'd be VERY nice if it could come up with the code element that the cursor is currently in highlighted in the tree. That would help enormously with "seeing" where you currently are in the code.
      2. Given the code spade tool, it'd be +really+ nice to have a couple extra commands to jump to the "next" method and "previous" method, given the current cursor location. VS has a next and prev method command, but they only work with VB as far as I can tell.
      Still, awesome tool, and very handy.
      Is the code up on Github or something? I'd be happy to look into whipping up a pull request for these things.
    • Duh. Open source. I see that now. I'll have a look at that.
    • Wonderful, glad you like it. :)
      Yep, open source as you found - contributions welcome!  I recommend checking out for some basic details.
      Our backlog is on Trello:  Your first suggestion does exist but the second one is new so please suggest it there.
      Some tips specifically for extending Spade:
        - SpadeToolWindow inherits from ToolWindowPane to integrate into VS
        - SpadeViewModel is instantiated by SpadeToolWindow and backs SpadeView
        - SpadeView is the WPF visual.  It does have more code behind than I would like, primarily to perform a lot of custom mouse/key/drag and drop operations to drive the TreeView based control.
      Hope it helps and feel free to reach out with questions.  These discussion boards on VSG aren't usually the easiest - Trello is preferred.
  • unnecessary indentation of a comment section
    2 Posts | Last post August 31, 2015
    • Hi,
      I like the extension, but I noticed a strange cleaning-up that I don't know how to disable. If I have in my .h file in a cpp project the following simple code:
      /* Copyright (C) ...
       * Proprietary and confidential
       * Written by ...
      #include "../Utils/ValidatedArticleLinks.h"
      /// //////////////////////
      /// TStarter
      class TStarter ...
      then cleaning up adds one space in the TStarter comment:
       /// //////////////////////
       /// TStarter
      class TStarter
      this has to do with the copyright section at the top, because if I remove it, there is no problem.
    • I'm glad to hear you like it.  Will you please open an issue on GitHub so we can look into that further?
  • Why is "Clean Up Code" Menu inactive?
    2 Posts | Last post August 30, 2015
    • I installed CodeMaid 0.8.1 under fresh installed Visual Studio 2015 but the menu "Clean Up Code" is greyed or inactive. The file is in the solution of course. And auto clean up on save seems doesn't work as well. But spade and other things are working  properly.
    • If Spade is able to load a document, then cleaning should(tm) work and be enabled as they share some common underlying infrastructure.
      You could try enabling diagnostics mode (CodeMaid->Options->Diagnostics mode) and then see what messages are posted to the Output tool window in Visual Studio.
      If that doesn't point out something obvious, please open an issue on GitHub so we can look into it further:
  • Function Parameter Indentation
    5 Posts | Last post August 22, 2015
    • Hi,
      I think this is a great tool, and special thanks to taking time to write it.
      int func1(
        int32_t a,
        int32_t b);
      If I run CodeMaid becomes
      int func1(
      int32_t a,
      int32_t b);
      I.e. it looses indentation of the parameters, 
      How can I disable it?
    • Hi Sumonto -
      Thanks for your kind comments.
      I wasn't able to reproduce this, but I suspect it could be a similar issue to the other one you posted (see next reply to consolidate).
      Hope it helps,
      -Steve Cadwallader
    • Hi Steve,
      Thanks for your reply, however I could not find an option under 
      "Tools->Options->Text Editor->C/C++->Formatting->Spacing" to disable "
      To disable "function param indentation" issue?
      Is there any way you could help me more.
    • OK found it!
      Tools->Options->Text Editor->C/C++->Formatting->Indentation->In Existing code...
      Disable it.
    • Great, glad you found it and thanks for posting that for anybody else who might be looking for it.
  • Sorting methods alphabetically
    5 Posts | Last post August 21, 2015
    • Is there a way to just sort methods alphabetically regardless of access or type? I tried looking into Formatting but I need to either go with access before type or type before access. I want to ignore both type and access and just sort the entire thing by name.
    • Currently no, I don't think there's a configuration that would match your request.  You may make a feature request on the Trello backlog ( or the code is open source if you would like to look to add it (
    • I see. Thanks for the response. Just posted on Trello :)
    • How do I uninstall it?
      Windows 10, it doesn't appear in the "Program and Features" section, I can't find any option to remove it in the settings from within VS. So?
    • Inside Visual Studio under Tools->Extensions and Updates where all extensions are listed is where you can uninstall.
  • Variable Declaration alignment
    2 Posts | Last post August 19, 2015
    • Hi,
      Is there a way to leave the variable declaration indentation un-touched.
      ShortType1   st1      = 0;
      LongLongType longtype = 0;
      ShortType1 st1 = 0;
      LongLongType longtype = 0;
      Is there a way to disable this?
    • CodeMaid invokes Visual Studio's native formatting, and then extends upon it.  The removal of spaces in variable declarations is done by Visual Studio's formatting, and you can see the same behavior if you invoke Edit->Advanced->Format Document.  You can tell CodeMaid not to invoke Visual Studio's native formatting at CodeMaid->Options->Visual Studio->"Run format document", but you would lose several other cleanup actions in the process.  You can also look for additional Visual Studio configuration options under Tools->Options->Text Editor->C/C++->Formatting->Spacing.
  • More code cleaning for VB.Net
    4 Posts | Last post August 17, 2015
    • First of all, I love your addon. It's great.
      My question: Is it possible to add the "Remove unused using statements"
      and "Sort using statements"(Imports) for Visual Basic .Net?
    • Thanks, I really appreciate hearing that. :)
      It should be possible.  I don't think there is an existing card in the backlog for that feature, would you like to add one?
    • I think, I don't have the permission to add a card to the list.
    • The very first card says "You can add comments to this card to request a new card". Please comment there. 
  • CodeMaid for Python
    2 Posts | Last post August 13, 2015
    • What is the chance the CodeMaid works with Python code?
      Visual Studio today already works with python code using Pytools ( and would be awesome if you cover it.
    • There is a card in our backlog to support Python here:
      Please feel free to vote/comment on it.  The card also includes a link to the pull request showing how PHP support was added as an example for what it would take to add support for Python.
  • The Command to execute is not enabled.
    2 Posts | Last post August 11, 2015
    • I'm using VS Premium 2013, Update 5 and CodeMaid v 0.8.0.  Selecting the "Find In Solution Explorer" results in the exception message, "The Command to execute is not enabled."  How do I enable the Command?
    • Are you sure the currently active document exists within the solution?
      If you are still having issues, please open an issue on GitHub (, including information about what type of file you are trying to find (e.g. C#, VB, etc.)
  • CodeMaid Spade too slow to load
    2 Posts | Last post August 07, 2015
    • When opening large classes, say with 5k lines in it, spade may take more than a minute to load.
      Is it expected behavior? Most of the time, when opening a class you may need to user visual studio, but it hangs for that amount of time. Perhaps, if Spade would load asynchronouslly on background, might imnprove performance in this case.
      Additionally, it might check the cache first, and then load async. It will take about the same time to load, but will definitely avoind disrupting work. If you need to use it as soon as opening a class, you may just wait for it.
    • Spade does load asynchronously in the background.  Please check your settings at CodeMaid->Options->"Load models asynchronously".  This setting is on by default, but if it has been turned off then you would see the behavior you described.
      If you are still having an issue, please open an issue on GitHub here with more details (e.g. VS version, configuration settings):
1 - 10 of 152 Items