Awesome PowerShell
A curated list of delightful PowerShell packages and resources.
PowerShell is a cross-platform (Windows, Linux, and macOS) automation and configuration tool that is optimized for dealing with structured data (e.g. JSON, CSV, XML, etc.), REST APIs, and object models.
It includes a command-line shell and an associated scripting language.
Project Link
Description
Last Updated
ConfluencePS
A module for interacting with Atlassian's Confluence in powershell (by using the API).
HipChatAdmin
A module for simple integration with Atlassian HipChat via the HipChat API.
JiraPS
A module for interacting with Atlassian's Jira in powershell (by using the API).
Posh-Gist
Cmdlets for interacting with GitHub Gist.
Posh-GitHub
Cmdlets that expose the GitHub API.
PSAppVeyor
A module to interact with the AppVeyor REST API.
PSGist
A module to work with GitHub Gists.
PSGitHub
A Module contains commands to manage GitHub through its REST API.
PSSlack
A Module for simple Slack integration.
PSTeams
A module for sending formatted messages to a Microsoft Teams Channel.
PSTelegramAPI
A Module for Telegram APIs
PSURLScanio
A module for urlscan.io that is a service to scan and analyze websites.
Book Publisher Link
Description
Exploring PowerShell Automation
A free eBook sampler that gives you an overview of how to administer your environment.
Learn dbatools in a Month of Lunches
Learn how to automate SQL Server with PowerShell and the awesome dbatools module.
Learn PowerShell in a Month of Lunches, Linux and macOS Edition
A task-focused tutorial for administering Linux and macOS systems using Microsoft PowerShell.
Learn PowerShell Scripting in a Month of Lunches
A guide to the process of developing, testing, and deploying scripts, and the art of toolmaking.
Learn Windows PowerShell in a Month of Lunches, Third Edition
An innovative tutorial designed for busy IT professionals. Just set aside one hour a day - lunchtime would be perfect - for a month, and you'll be automating Windows tasks faster than you ever thought possible.
PowerShell for SysAdmins: Workflow Automation Made Easy
Learn how to manage and automate your desktop and server environments.
PowerShell in Depth
The go-to reference for administrators. Every major shell technique, technology, and tactic is explained and demonstrated, providing a comprehensive reference to almost everything an admin would do in the shell.
PowerShell Notes for Professionals
Compilation of notes and snippets.
Practical Automation with PowerShell
Learn how to build, organize, and share useful automations with PowerShell.
Secrets of PowerShell Remoting
On all things remoting. Workflow, fan-out, etc.
The Big Book of PowerShell Error Handling - Dave Wyatt
Great reference for error handling techniques.
The Big Book of PowerShell Gotchas - Don Jones
Excellent guide to avoiding common pitfalls.
The Monad Manifesto, Annotated - Jeffrey Snover
Design and theory behind the language from its creator.
Tiny PowerShell Projects
A hands-on tutorial for system administration with PowerShell.
Why PowerShell? - Warren Frame & Don Jones
Use cases for the language.
Windows PowerShell in Action, Third Edition
The latest revision of the comprehensive reference guide.
Windows PowerShell Networking Guide
Language specific guide to Windows networking.
Project Link
Description
Last Updated
BuildHelpers
Variety of helper functions for CI/CD scenarios.
Invoke-Build
Build and test automation tool inspired by psake.
psake
Build automation tool inspired by rake (aka make in Ruby) and bake (aka make in Boo).
PSDeploy
Module built for the purpose of simplifying multiple types of deployments.
YDeliver
Build and deployment framework aimed at .NET projects.
Code and Package Repositories
Site Link
Description
GitHub
Looking for an Open Source PowerShell project? It's probably here.
PowerShell Gallery
Official PowerShell package repository, used by PowerShellGet.
PowerShell Test Gallery
A test version of the PowerShell Gallery. Useful when developing new modules.
Project Link
Description
Last Updated
Dotenv
Provides directory specific environments through .env files, similar to direnv.
Jump-Location
PowerShell cd
that reads your mind. Autojump implementation for PowerShell. UNMAINTAINED
Microsoft.PowerShell.UnixCompleters
Get parameter completion for native Unix utilities. Requires zsh or bash.
poco
peco implementation. Interactive filtering tool.
posh-git
Set of PowerShell scripts which provide Git/PowerShell integration.
posh-with
Command prefixing for continuous workflow using a single tool.
PSDepend
PowerShell Dependency Handler
PSDirTag
DirTags are relative paths that appear as variables in the PowerShell prompt that update as you navigate. Saves keystrokes when navigating folder structures.
PSFzf
A PowerShell module that wraps fzf , a fuzzy file finder for the command line.
pslinq
LINQ (LINQ2Objects) for PowerShell.
PSReadLine
Bash inspired readline implementation for PowerShell. Keeps history between sessions, adds reverse-history search and makes the commandline experience much better overall.
PSScriptTools
A set of of PowerShell functions you might use to enhance your own functions and scripts or to facilitate working in the console.
PSUtil
Designed to make the user's console life more convenient. It includes shortcuts, aliases, key bindings and convenience functions geared towards greater efficiency and less typing.
TabExpansionPlusPlus
PowerShell module to make customizing tab completion easier and add a library of custom argument completers.
thefuck
Magnificent app which corrects your previous console command (by typing fuck
).
Zlocation
z.sh implementation for PowerShell. Similar to Jump-Location.
zoxide
A better way to navigate your filesystem. Written in Rust, cross-shell, and much faster than other autojumpers.
Project Link
Description
Last Updated
hjson-powershell
Simple powershell module for conversion between HJSON and JSON.
ImportExcel
Module to import/export Excel spreadsheets, without Excel.
powershell-yaml
PowerShell CmdLets for YAML format manipulation.
PSWriteHTML
PSWriteHTML is a PowerShell module allowing you to create HTML easily.
PSWritePDF
Module to create, edit, split, merge PDF files on Windows / Linux and MacOS.
PSWriteWord
Module to create Microsoft Word documents without Microsoft Word installed.
Project Link
Description
Last Updated
Invoke-CreateModuleHelpFile
PowerShell function to create a HTML help file for a module and all it's commands.
platyPS
Write PowerShell External Help in Markdown.
PScribo
PowerShell documentation framework what can create HTML, Word, text files based on PowerShell-based DSL (domain specific language).
Project Link
Description
Last Updated
Carbon
DevOps for automating the configuration of Windows computers.
Kansa
Incident response framework.
PowerShell PowerUp
Powerful server management framework.
PSCX
PowerShell Community Extensions - Useful set of additional cmdlets.
PSFramework
Easily add configurations, logging and more to your own PowerShell module.
Project Link
Description
Last Updated
Jupyter-PowerShell
Jupyter Kernel for PowerShell.
PSKoans
A simple, fun, and interactive way to learn the PowerShell language through Pester unit testing.
Project Link
Description
Last Updated
PoShLog
Cross-platform, extensible logging module built upon Serilog .
Module Development Templates
Project Link
Description
Last Updated
Catesta
Catesta is a PowerShell module project generator. It uses templates to rapidly scaffold test and build integration for a variety of CI/CD platforms.
Plaster
Plaster is a template-based file and project generator written in PowerShell.
PSModuleDevelopment
Get started using module templates in 2 minutes with this module's low entry barrier and casual convenience.
Project Link
Description
Last Updated
Chocolatey
The package manager for Windows. The sane way to manage software on Windows.
GitLab
Use a GitLab server as Package Provider.
PowerShell App Deployment Toolkit
Provides a set of functions to perform common application deployment tasks and to interact with the user during a deployment.
PowerShellGet
PowerShellGet is the Package Manager for PowerShell. Packages are available on PowerShellGallery .
Scoop
A command-line installer for Windows.
Project Link
Description
Last Updated
Invoke-Parallel
This function will take in a script or scriptblock, and run it against specified objects(s) in parallel.
PoshRSJob
Provides an alternative to PSJobs with greater performance and less overhead to run commands in the background.
PSThreadJob
Module for running concurrent jobs based on threads rather than processes.
Project Link
Description
Last Updated
BloodHound
Easily identify highly complex attack paths that would otherwise be impossible to quickly identify.
File System Security
Allows a much easier management of permissions on files and folders.
Harness
Interactive remote PowerShell Payload.
Invoke-Obfuscation
PowerShell Obfuscator.
Nishang
Enables scripting for red team, penetration testing, and offensive security.
p0wnedShell
PowerShell Runspace Post Exploitation Toolkit.
PESecurity
Module to check if a Windows binary (EXE/DLL) has been compiled with ASLR, DEP, SafeSEH, StrongNaming, and Authenticode.
PowerForensics
Popular live disk forensics platform for windows.
PowerShellArsenal
Module used to aid a reverse engineer.
PowerShellEmpire
Post-exploitation agent.
Powershellery
Powershell scripts used for general hackery.
PowerSploit
Post-exploitation framework.
PowerTools
Collection of projects with a focus on offensive operations.
PowerUpSQL
Toolkit for Attacking SQL Server.
PSReflect
Easily define in-memory enums, structs, and Win32 functions in PowerShell. Useful for attacks, example .
Project Link
Description
Last Updated
AutoSPInstaller
Automated SharePoint 2010-2019 installation script.
Client-side SharePoint
API for SharePoint 2010, 2013 and Online.
SharePoint2019Commands
PowerShell module to help you auto-load all SharePoint 2019 cmdlets.
SPReplicator
SPReplicator helps replicate SharePoint list data to/from CSV, SQL Server, SharePoint itself and more.
Project Link
Description
Last Updated
dbatools
Helps SQL Server Pros be more productive with instance migrations and much more.
SimplySql
SimplySql is a module that provides an intuitive set of cmdlets for talking to databases that abstracts the vendor specifics. The basic pattern is to connect to a database, execute one or more sql.
Project Link
Description
Last Updated
Format-Pester
PowerShell module for documenting Pester's results - exports Pester results to HTML, Word, text files using PScribo .
Pester
PowerShell BDD style testing framework.
PSScriptAnalyzer
PSScriptAnalyzer provides script analysis and checks for potential code defects in the scripts by applying a group of built-in or customized rules on the scripts being analyzed.
Selenium
PowerShell module to run a Selenium WebDriver.
Project Link
Description
Last Updated
Oh-My-Posh
Tons of beautiful theme that can be enabled by one single command (includes many awesome powerline theme).
PoshColor
Colour output from common commands with support for custom themes.
Powerline
PowerShell Classes for richer output and prompts.
Starship
The minimal, blazing fast, and extremely customizable prompt for any shell.
Project Link
Description
Last Updated
AnyBox
Designed to facilitate script input/output with an easily customizable WPF window.
BurntToast
A module for creating and displaying Toast Notifications on Microsoft Windows 10.
GraphicalTools
A module that mixes PowerShell and GUIs! - built on Avalonia and gui.cs.
Graphical
A module to plot colorful console 2D Graphs (Scatter, Bar, Line).
PS-Menu
A module to render interactive console menu.
psInlineProgress
Write inline progress bars in PowerShell.
PSWriteColor
Write-Color is a wrapper around Write-Host allowing you to create nice looking scripts, with colorized output.
Terminal-Icons
A module to show file and folder icons in the terminal.
Project Link
Description
Last Updated
Flancy
Web microframework for Windows PowerShell.
Pode
Pode is a Cross-Platform PowerShell framework for creating web servers to host REST APIs, Web Sites, and TCP/SMTP Servers.
Polaris
A cross-platform, minimalist web framework for PowerShell.
Universal Dashboard
Cross-platform module for developing websites and REST APIs.
WebCommander
Run scripts and view results, in a friendly web GUI or via a web service.
Project Link
Description
Last Updated
DbgShell
A PowerShell front-end for the Windows debugger engine.
m2cgen
A CLI tool to transpile trained classic ML models into a native PowerShell code with zero dependencies.
poke
Crazy cool reflection module for PowerShell. Explore and invoke private APIs like nobody is watching. Useful for security research, testing and quick hacks.
PoshBot
Powershell-based bot framework.
PoShKeePass
Module for working with KeePass databases.
WSLab
Windows Server rapid lab deployment scripts.