A PowerShell module that allows you to dump all of an object's properties, including nested objects, to the console in a nice, colourful, structured, and easy-to-read format. This enhances productivity in exploratory and debugging workflows in the terminal.
Currently dumPS only supports PowerShell v7.3+, but support for PowerShell v5 is planned for the near future.
If you enjoy this module, consider giving it a GitHub star ⭐ to show your support.
When debugging PowerShell in Visual Studio Code you can use the Variables and Watch windows to drill into objects and see all of their property values.
When experimenting in the terminal however, it is very difficult to see all nested properties of an object.
You can pipe objects to Select-Object * to see all top-level property values, but this does not show nested objects' properties.
dumPS allows you to easily view all of an object's nested properties in the console in a nice, structured format.
List the features of this project:
- Easily view all properties and values of an object in the terminal, including nested objects.
PassThruparameter to still return the object being displayed.
The following code produces the output screenshot below:
$dan = @{
Name = 'Daniel Schroeder'
Alias = 'deadlydog'
Address = @{
Province = 'Saskatchewan'
Country = 'Canada'
}
Likes = @('Programming', 'PowerShell', '.NET', 'Dogs')
}
$dan | Out-DumpInstall the module from the PowerShell Gallery:
Install-Module -Name dumPS -Scope CurrentUserDisplay all properties of an object using full cmdlet name:
$process = Get-Process | Select-Object -First 1
Out-Dump -InputObject $processPipe an object to display all properties:
$process = Get-Process | Select-Object -First 1
$process | Out-DumpDisplay the object as part of a pipeline:
Get-Process | Select-Object -First 1 | Out-DumpUse the PassThru parameter to display the object while still returning it to the pipeline:
$process = Get-Process | Select-Object -First 1 | Out-Dump -PassThruUse the dumps alias in place of Out-Dump:
Get-Process | Select-Object -First 1 | dumpsAside: The alias is
dumpsinstead ofdumpto avoid conflicting with the unixdumpcommand.
Issues and Pull Requests are welcome. See the Contributing page for more details.
See what's changed in the application over time by viewing the changelog.
Buy me a toque for providing this PowerShell module open source and for free 🙂
This module utilizes Dumpify. The Dumpify library is doing all of the heavy lifting and I thank them for making this PowerShell module possible.

