Thursday, March 03, 2011

StudioShell

Overview

StudioShell's goal is to fundamentally change the way you interact with Visual Studio and your code.
If you’ve ever implemented a Visual Studio extension, such as an add-in or a package, you know how convoluted this space has become. You have to become an expert in your tooling if you want to change it. StudioShell changes that by exposing many of Visual Studio’s extensibility points in a simple and consistent way. It makes the Visual Studio IDE interactive and discoverable.
What an add-in does in a compiled binary, StudioShell can accomplish with a one-liner.

Getting Involved
StudioShell has plenty of issues, but it's stable enough for general use. The biggest help you can provide at the moment would be to log any issues using the Issue Tracker.
I welcome anyone who would like to contribute at the code level, and will soon post explicit project openings. In the meantime, feel free to fork the project and play around.

Features
The features supported by StudioShell include:
Support for standard PowerShell profile scripts, as well as StudioShell profile scripts - customize your StudioShell session as you would any other PowerShell session.
Manage your projects, references, breakpoints, stack frame locals, menus, toolbars, Visual Studio settings, IDE windows, and even your code from PowerShell scripts, all in a consistent and discoverable way.
"Solution Modules" - save your StudioShell and IDE customizations as a PowerShell module in your solution, and it will automatically be imported into your StudioShell session when the solution is loaded.
Simple visualization controls you can invoke from the console - create a graph of project code statistics with one line of script.
Fully integrated context-sensitive help.
Host indifference - StudioShell features can be used from any suitable PowerShell host.
For more specific features and examples, please see Examples.

Read more: Codeplex