awesome-powershell
by janikvonrotz
A curated list of delightful PowerShell modules and resources
AI summary
PowerShell toolkit
A curated list of PowerShell modules and resources to help developers automate tasks and extend the capabilities of the Windows shell
- stars
- 4.9K
- forks
- 421
- watching
- 224
- awesome lists
- 4
- entries
- 171
What's in the list
171 links in 26 sections, with live GitHub stats.activeno commit in 2y
API Wrapper
HipChatAdmin
A module for simple integration with Atlassian HipChat via the HipChat API
PSGitHub
Module contains commands to manage GitHub through its REST API
Posh-GitHub
Cmdlets that expose the GitHub API
Posh-Gist
Cmdlets for interacting with GitHub Gist
PSGist
A module to work with GitHub Gists
PSAppVeyor
A module to interact with the AppVeyor REST API
PSSlack
Module for simple Slack integration
- ConfluencePS
A module for interacting with Atlassian's Confluence in powershell (by using the API)
- JiraPS
A module for interacting with Atlassian's Jira in powershell (by using the API)
PSTelegramAPI
Module for Telegram APIs
PSTeams
A module for sending formatted messages to a Microsoft Teams Channel
PSURLScanio
A module for that is a service to scan and analyze websites
Blogs
- Windows PowerShell Blog
Official PowerShell Team Blog
- Learn PowerShell | Achieve More
Personal blog of Boe Prox who moderated for the Scripting Guy
- PowerShellMagazine
Awesome magazine
- PowerShellExplained
Personal blog of Kevin Marquette
- Doug Finke
Author of
- Mike F. Robbins
Microsoft MVP. SAPIEN Tech MVP. Co-author of Windows PowerShell TFM 4th Edition
- Adam the Automator
Engaging, technical content on all things automation, cloud computing and DevOps by Adam Bertram and friends
- Clear-Script
Personal blog of Joel (Sallow) Francis
Books
- Exploring PowerShell Automation
a free eBook sampler that gives you an overview of how to administer your environment
- 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
- Windows PowerShell in Action, Third Edition
The latest revision of the comprehensive reference guide
- 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
- 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
- The Monad Manifesto, Annotated - Jeffrey Snover
Design and theory behind the language from its creator
- Windows PowerShell Networking Guide
Language specific guide to Windows networking
- Why PowerShell? - Warren Frame & Don Jones
Use cases for the language
- The Big Book of PowerShell Gotchas - Don Jones
Excellent guide to avoiding common pitfalls
- The Big Book of PowerShell Error Handling - Dave Wyatt
Great reference for error handling techniques
- Secrets of PowerShell Remoting
On all things remoting. Workflow, fan-out, etc
- PowerShell Notes for Professionals
Compilation of notes and snippets
- PowerShell for SysAdmins: Workflow Automation Made Easy
Learn how to manage and automate your desktop and server environments
- Practical Automation with PowerShell
Learn how to build, organize, and share useful automations with PowerShell
- Learn dbatools in a Month of Lunches
Learn how to automate SQL Server with PowerShell and the awesome dbatools module
- Tiny PowerShell Projects
A hands-on tutorial for system administration with PowerShell
Build Tools
psake
Build automation tool inspired by rake (aka make in Ruby) and bake (aka make in Boo)
Invoke-Build
Build and test automation tool inspired by psake
PSDeploy
Module built for the purpose of simplifying multiple types of deployments
BuildHelpers
Variety of helper functions for CI/CD scenarios
YDeliver
Build and deployment framework aimed at .NET projects
Code and Package Repositories
- 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
Commandline Productivity
Dotenv
Provides directory specific environments through .env files, similar to direnv
posh-git
Set of PowerShell scripts which provide Git/PowerShell integration
PSReadLine
Bash inspired readline implementation for PowerShell. Keeps history between sessions, adds reverse-history search and makes the commandline experience much better overall
TabExpansionPlusPlus
PowerShell module to make customizing tab completion easier and add a library of custom argument completers
Jump-Location
PowerShell that reads your mind. implementation for PowerShell
Zlocation
* implementation for PowerShell. Similar to Jump-Location
thefuck
Magnificent app which corrects your previous console command (by typing )
PSFzf
a PowerShell module that wraps , a fuzzy file finder for the command line
pslinq
LINQ (LINQ2Objects) for PowerShell
posh-with
Command prefixing for continuous workflow using a single tool
- poco
* implementation. Interactive filtering tool
PSDirTag
DirTags are relative paths that appear as variables in the PowerShell prompt that update as you navigate. Saves keystrokes when navigating folder structures
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
Microsoft.PowerShell.UnixCompleters
Get parameter completion for native Unix utilities. Requires zsh or bash
PSDepend
PowerShell Dependency Handler
PSScriptTools
A set of of PowerShell functions you might use to enhance your own functions and scripts or to facilitate working in the console
zoxide
A better way to navigate your filesystem. Written in Rust, cross-shell, and much faster than other autojumpers
Communities
- PowerShell.org
Forums, summits, community blog posts, and more
- /r/PowerShell
Reddit PowerShell community
- Slack PowerShell team
Large chat room dedicated to PowerShell. Bridged with on irc.freenode.net
- Research Triangle PowerShell User Group
Very active PowerShell and automation user group. Meets on first and third Wednesdays. All skill levels welcome
Data
hjson-powershell
Simple powershell module for conversion between 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
Documentation Helper
platyPS
Write PowerShell External Help in Markdown
Invoke-CreateModuleHelpFile
PowerShell function to create a HTML help file for a module and all it's commands
PScribo
PowerShell documentation framework what can create HTML, Word, text files based on PowerShell-based DSL (domain specific language)
Editors and IDEs
- PowerShell Studio
Powerful PowerShell IDE with module, help, and user interface development tools, high DPI support and regular updates
- PowerShell for Visual Studio Code
Provides IntelliSense, code navigations, script analysis, script debugging, and more for the editor
- PoshTools for Visual Studio
Provides IntelliSense, script debugging, and Pester testing support for PowerShell to Visual Studio
- PowerShell ISE
Official PowerShell development environment included with Microsoft Windows
- ISE Steroids
Add-on for the PowerShell ISE which provides a rich set of additional features to complete the ISE development experience
- PowerShell Plus
All in one IDE
SublimeText package
PowerShell language support for Sublime Text
Atom package
PowerShell language support for Atom
Frameworks
- Carbon
DevOps for automating the configuration of Windows computers
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
Kansa
Incident response framework
Interactive Learning
PSKoans
A simple, fun, and interactive way to learn the PowerShell language through Pester unit testing
Jupyter-PowerShell
Jupyter Kernel for PowerShell
Logging
PoShLog
Cross-platform, extensible logging module built upon
Module Development Templates
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
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
Package Managers
PowerShellGet
PowerShellGet is the Package Manager for PowerShell. Packages are available on
- Chocolatey
The package manager for Windows. The sane way to manage software on Windows
GitLab
Use a GitLab server as Package Provider
- Scoop
A command-line installer for Windows
- PowerShell App Deployment Toolkit
Provides a set of functions to perform common application deployment tasks and to interact with the user during a deployment
Parallel Processing
PoshRSJob
Provides an alternative to PSJobs with greater performance and less overhead to run commands in the background
Invoke-Parallel
This function will take in a script or scriptblock, and run it against specified objects(s) in parallel
PSThreadJob
Module for running concurrent jobs based on threads rather than processes
Podcasts
- PowerScripting
Weekly show run by Jon Walz and Hal Rottenberg
- The PowerShell News Podcast
This podcast is the latest news on PowerShell
Security
- File System Security
Allows a much easier management of permissions on files and folders
PowerShellArsenal
Module used to aid a reverse engineer
PowerTools
Collection of projects with a focus on offensive operations
PowerForensics
Popular live disk forensics platform for windows
PowerSploit
Post-exploitation framework
PowerShellEmpire
Post-exploitation agent
PSReflect
Easily define in-memory enums, structs, and Win32 functions in PowerShell. Useful for attacks,
BloodHound
Easily identify highly complex attack paths that would otherwise be impossible to quickly identify
Nishang
Enables scripting for red team, penetration testing, and offensive security
Harness
Interactive remote PowerShell Payload
Invoke-Obfuscation
PowerShell Obfuscator
- 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
Powershellery
Powershell scripts used for general hackery
PowerUpSQL
Toolkit for Attacking SQL Server
SharePoint
- AutoSPInstaller
Automated SharePoint 2010-2019 installation script
- Client-side SharePoint
API for SharePoint 2010, 2013 and Online
SPReplicator
SPReplicator helps replicate SharePoint list data to/from CSV, SQL Server, SharePoint itself and more
SQL Server
Testing
Pester
PowerShell BDD style testing framework
Format-Pester
PowerShell module for documenting Pester's results - exports Pester results to HTML, Word, text files using
Selenium
PowerShell module to run a Selenium WebDriver
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
Themes
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
UI
AnyBox
Designed to facilitate script input/output with an easily customizable WPF window
BurntToast
Module for creating and displaying Toast Notifications on Microsoft Windows 10
Graphical
Module to plot colorful console 2D Graphs (Scatter, Bar, Line)
GraphicalTools
A module that mixes PowerShell and GUIs! - built on Avalonia and gui.cs
PSWriteColor
Write-Color is a wrapper around Write-Host allowing you to create nice looking scripts, with colorized output
Terminal-Icons
Module to show file and folder icons in the terminal
psInlineProgress
Write inline progress bars in PowerShell
Videos
- PowerShell Unplugged with Jeffrey Snover and Don Jones Ignite 2017
The inventor of PowerShell talking about "the latest and coolest PowerShell features to help you automate and manage the hybrid cloud". Focused on the PowerShell Community
- Getting Started With PowerShell 3.0 Jump Start
Jump starts series are for IT professionals with no previous experience with PowerShell, and want to learn it fast
- Advanced Tools & Scripting with PowerShell 3.0
IT pros, take this advanced PowerShell course to find out how to turn your real time management and automation scripts into useful reusable tools and cmdlets
- What's New in PowerShell v5
Through description on some of the exciting new features in PowerShell version 5.0
- PowerShell Open Source Project
Collection of videos thoroughly demonstrate how PowerShell open source project runs on Linux
- PowerShell on Linux and Open Source
Brief introduction to PowerShell open source project and how it runs on Linux
- PowerShell
This show will include videos talking about the PowerShell automation platform, Desired State Configuration (DSC), infrastructure as code, and related concepts!! These videos are created by Trevor Sullivan, a Microsoft MVP for Windows PowerShell
- Learn Windows PowerShell in a Month of Lunches - Don Jones
Video companion to the book of the same title
- Best Practices for Script Design - Don Jones
Don Jones discusses script design principles and best practices
- PowerShell Toolmaking (1 of 3) - Don Jones
Toolmaking (1 of 3) - Don Jones
- PowerShell Toolmaking (2 of 3) - Don Jones
Toolmaking (2 of 3) - Don Jones
- PowerShell Toolmaking (3 of 3) - Don Jones
Toolmaking (3 of 3) - Don Jones
- Sophisticated Techniques of Plain Text Parsing - Tobias Weltner
Great reference for text parsing
- Monad Manifesto Revisited - Jeffrey Snover
Jeffrey Snover reflects on the beginnings of the language and where it's going
- AD Forensics with PowerShell - Ashley McGlone
A lot of AD related scripting and analysis techniques
- Windows PowerShell What's New in V2 - SAPIEN
Old but gold. Most of this is still very relevant
- All Things Microsoft PowerShell
Another general language reference
- Research Triangle PowerShell User Group YouTube Channel
large catalog of user group meetings and demos by community members. 150+ hours of content
- The anatomy of the Get-Help command in PowerShell
Software Engineer Tyler Leonhardt introduces the Powershell help system
Webserver
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
WebCommander
Run scripts and view results, in a friendly web GUI or via a web service
- Universal Dashboard
Cross-platform module for developing websites and REST APIs
Misc
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
WSLab
Windows Server rapid lab deployment scripts
PoshBot
Powershell-based bot framework
PoShKeePass
Module for working with databases
Nothing in this list matches your filter.
Featured in 4 awesome lists
Each link jumps to the spot where the list mentions awesome-powershell.