A Favorite PowerShell ISE Feature: Module Browser


Summary: Sean Kearney shows you how to access modules in the PowerShell Gallery.

Honorary Scripting Guy, Sean Kearney, is here today to introduce you to a feature you may not have heard of called the Module Browser for the PowerShell ISE.

   Note   This is a five-part series that includes the following posts about features in the Windows PowerShell ISE:

One of the newest things coming out of Microsoft is a central website called the PowerShell Gallery. This is a central repository of scripts that the community can use programmatically.

A perfect example of this in action is Desired State Configuration (DSC). The needed code for a particular resource may not be on a server. However, you can now pull these DSC resources directly from the PowerShell Gallery.

This allows administrators to simply define the resources they need, such as a DHCP resource, to be brought down as they need it. It also means if there have been improvements or bug fixes, these resources have the potential to receive them in a more automated fashion.

Administrators and power users who need modules for their day-to-day activities can use the Find-Module and Find-Package capabilities in Windows PowerShell 5.0 to consume these resources.

If you install the Module Browser for the PowerShell ISE, it will give you the ability to access and work with these modules directly in the PowerShell ISE. You can download this free add-on from the PowerShell Gallery: ISEModuleBrowserAddon 1.0.1.

Image of menu

After you download and install it, you’ll have a new module that you can import. With the PowerShell ISE in the Console view, run the following line:

Image of command

When it is complete, you will see that the Module Browser was added to the Add-on Tool menu. Initially, you may see a small message that says Initializing, with an Accept button. Click the Accept button to continue.

Image of menu

At this point, you are connected to the PowerShell Gallery. If you press ENTER in the search panel, it will do a generic wildcard search of the Gallery. The results will be in alphabetical order. In the following example, I used an asterisk ( * ) as a wildcard character, which produces the same result.

Image of menu

If you were to enter a word, such as Azure or DSC, it would search for all modules with those characters in the name.

When you click any module, you can choose Add to Favorites or Open to download and view it.

Image of menu

If you click Add to favorites, it will add this module to a built-in list of favorites for the Module Browser. This is not related to your Internet favorites list. If you click the Favorites tab, you will see the current list of favorites on your system:

Image of menu

If you’d like to obtain a module, click the name of the module, and then click Open.

Image of menu

Clicking Open provides details about the module, including the hyperlink to the module in the PowerShell Gallery, the name of the author, and a general description of its purpose.

Image of menu

Click Install to download and install the module for all users on the computer. It is stored in the common location for PowerShell modules (typically C:\Program Files\WindowsPowerShell\Modules).

After it is downloaded, you can access the module normally by using Import-Module. However, if you’d like to open this module for editing, you can click the Open button, which appears after the module is downloaded.

Image of menu

This provides a list of files that the module contains and allows you to directly open the folder. At this point, you can access, download, and consume or edit these modules within the PowerShell ISE.

Pop by for a visit tomorrow when I’ll take a look at another cool feature that IT pros will enjoy using in the PowerShell ISE: Snippets.

I invite you to follow the Scripting Guys on Twitter and Facebook. If you have any questions, send email to them at scripter@microsoft.com, or post your questions on the Official Scripting Guys Forum. See you tomorrow. Until then, always remember that with great PowerShell comes great responsibility.

Sean Kearney, Honorary Scripting Guy, Cloud and Datacenter Management MVP

Comments (5)

  1. Eager to jump in and install, but waiting for re release of WMF 5.0 by MS team..

  2. @Dotnetavalanche

    According to this post on the PowerShell blog, WMF 5.0 has already been released as RTM.

    http://blogs.msdn.com/b/powershell/archive/2015/12/16/windows-management-framework-wmf-5-0-rtm-is-now-available.aspx

    Cheers!
    Sean
    Honorary Scripting Guy

  3. postanote says:

    Nice post.
    I really love the add-on but…….

    But the RTM was pulled because it break your $PSModulePath.

    MS also pulled all related DSC items as well because they would also auto install WMFv5.
    They have stated this publically in in the download readme file.

    It has yet to be reposted.

    If you manage to get your hands on it another way, do not install this without backup up your path to restore it after. If you are still sitting at the $PSModuelPath defaults anyway, because you have not added additional modules. It's safe to use.

    And the Module Browser (which I have used since its release) has not worked in PoSH v5 since Feb 2015.

    I have tried many different ways to get MB to work with all versions of WMF5 after Apr 2015 and it still fails to function as it did as of WMF Preview Feb 2015. The Nuget portion never gets downloaded and if you do it manually, it is not in the right spots.
    Even after you manually move it to the right spots, MB return zero modules from the repository, though it does show your local modules fine.

    I am not the only one that has reported this issue. The last time I tried to install it was December (with apparently the older version) with the posted version.

    I really enjoy MB, but for now I have to use WMFv5 from Feb and on W2KR2/Win8 thru WS12R2. I have stopped trying to install it on my Win10 / WS2K16 boxes.

    When I need something from it. I just bring up a box where it works.

    I really hope they fix this soon. The bouncing from box to box is getting a bit old.

    Just tried this one version and the messages that I get back on the Nuget are what they should be.
    But it still causes the same error and this is on a pristine Win10 Ent install.

    'Windows PowerShell ISE error'
    'An unexpected error has occurred and the Windows PowerShell ISE must close…..ydda, ydda, yadda.'

    And yes, I am running this in an ISE session with an Unrestricted ExecutionPlicy as local admin when this fails.
    Though my Machine Policy is set to restricted.

    I just reset that to machine policy to RemoteSigned, and it still fails, when trying to import the module in a user session, running as admin, with an unrestricted policy. Again, this is a brand new, non-domain joined pristine build.

    Oh, well. I guess I'll have to keep messing with it until I can figure out a way to get it to work on Win 10 / Ws2K16.

    Oh well, back to WS2K12R2 and WMF v5 Feb 2015, 8^(
    because I really love using the tool. 8^)

  4. https://www.microsoft.com/en-us/download/confirmation.aspx?id=50395
    If we try download the WMF 5.0 RTM, we get the error text file instead stating :

    "Update 12/23/2015: WMF 5.0 RTM has been removed from Download Center due to an issue impacting our customers. Further details are available on the new PowerShell blog post at

    http://blogs.msdn.com/b/powershell/archive/2015/12/23/windows-management-framework-wmf-5-0-currently-removed-from-download-center.aspx"….

  5. iXlinQ says:

    Dear Sean,

    a lot of thanks to you again for your interesting and helpfull posts!
    In fact I would probably never have found the module browser Addon …

    There is one thing, I have to ask:
    It would be fine, if it could be used behind a (firewall) proxy, but it doesn’t looks like that 🙁
    There seems to be no setting for that unlike the "Script Browser" Addon which let’s me

    configure a proxy.
    Am I missing something or is it really not available yet?

    Greetings, Klaus

Skip to main content