Windows system utilities to maximize productivity
Go to file
2022-07-27 12:38:33 +02:00
.github [ci]Bump check-spelling/check-spelling from 0.0.20.pre.alpha7 to 0.0.20 (#19610) 2022-07-27 11:37:19 +01:00
.pipelines [ci]Add version number to symbols artifact (#19400) 2022-07-14 08:54:58 +01:00
deps Add a new YAML release pipeline to replace the old CDPx one (#15039) 2021-12-17 18:15:31 -08:00
doc NetAnalyzers and StyleCop centralized (#19476) 2022-07-19 22:40:40 +02:00
installer [installer] Ignore startmenu shortcut on update (#19618) 2022-07-27 12:38:33 +02:00
src [PTRun][Program]Apply settings from program json file (#19632) 2022-07-27 11:33:44 +01:00
tools [Tool]Exhaustively check every monitor in the Monitor Report Tool (#19384) 2022-07-13 11:53:47 +01:00
.gitattributes Update .gitattributes 2022-07-19 13:06:16 -07:00
.gitignore [ARM64] Installer Bootstrapper (#18241) 2022-05-13 16:55:39 +01:00
.gitmodules Bug report tool (#8633) 2020-12-22 11:27:28 +01:00
.vsconfig [meta]Remove 10.0.17134 platform SDK from vsconfig file (#16290) 2022-02-16 15:22:33 +00:00
CODE_OF_CONDUCT.md adding in a Code of Conduct 2020-03-05 10:11:27 -08:00
COMMUNITY.md Update COMMUNITY.md (#17735) 2022-04-14 11:25:43 -07:00
CONTRIBUTING.md Prepare for renaming master -> main (#13235) 2021-11-01 12:21:47 -05:00
Cpp.Build.props [PowerRename][ImageResizer] Tier1 Win11 Context menu (#19000) 2022-06-30 22:10:14 +02:00
Directory.Build.props NetAnalyzers and StyleCop centralized (#19476) 2022-07-19 22:40:40 +02:00
LICENSE Fix license file (#2626) 2020-05-02 15:59:18 -07:00
NOTICE.md Preview Handler for developer files (#15138) 2022-01-25 21:02:10 +01:00
nuget.config Clearing any nuget configuration that might be coming from parent directories, fixes #4595 2020-06-30 08:50:53 +02:00
PowerToys.sln [PowerRename][ImageResizer] Tier1 Win11 Context menu (#19000) 2022-06-30 22:10:14 +02:00
README.md Update README.md (#19554) 2022-07-20 09:07:26 -07:00
SECURITY.md Create SECURITY.md 2020-07-17 14:45:18 -07:00
Solution.props [PowerRename] Fluent UX (#13678) 2021-10-25 14:40:19 +01:00
SUPPORT.md Prepare for renaming master -> main (#13235) 2021-11-01 12:21:47 -05:00

Microsoft PowerToys

Hero image for Microsoft PowerToys

How to use PowerToys | Downloads & Release notes | Contributing to PowerToys | What's Happening | Roadmap

Build status

Architecture Solution (Main) Solution (Stable) Installer (Main)
x64 Build Status for Main Build Status for Stable Build Status Installer pipeline
ARM64 Build Status for Main Build Status for Main Build Status Installer pipeline

About

Microsoft PowerToys is a set of utilities for power users to tune and streamline their Windows experience for greater productivity. For more info on PowerToys overviews and how to use the utilities, or any other tools and resources for Windows development environments, head over to docs.microsoft.com!

Current utilities:
Always on Top PowerToys Awake Color Picker
FancyZones File Explorer Add-ons Image Resizer
Keyboard Manager Mouse utilities PowerRename
PowerToys Run Shortcut Guide Video Conference Mute

Installing and running Microsoft PowerToys

Requirements

Microsoft PowerToys GitHub releases page, click on Assets at the bottom to show the files available in the release. Please use the appropriate the PowerToys installer that matches your machine's architecture. For most people, it is x64.

  • For x64 processors (most common): click on PowerToysSetup-0.60.1-x64.exe
  • For ARM64 processors: PowerToysSetup-0.60.1-arm64.exe

This is our preferred method.

Via Microsoft Store

Install from the Microsoft Store's PowerToys page. You must be using the new Microsoft Store which will be available for both Windows 11 and Windows 10.

Via WinGet (Preview)

Download PowerToys from WinGet. To install PowerToys, run the following command from the command line / PowerShell:

winget install Microsoft.PowerToys -s winget

Other install methods

There are community driven install methods such as Chocolatey and Scoop. If these are your preferred install solutions, this will have the install instructions.

Contributing

This project welcomes contributions of all types. Help spec'ing, design, documentation, finding bugs are ways everyone can help on top of coding features / bug fixes. We are excited to work with the power user community to build a set of tools for helping you get the most out of Windows.

We ask that before you start work on a feature that you would like to contribute, please read our Contributor's Guide. We will be happy to work with you to figure out the best approach, provide guidance and mentorship throughout feature development, and help avoid any wasted or duplicate effort.

Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution.

For guidance on developing for PowerToys, please read the developer docs for a detailed breakdown. This includes how to setup your computer to compile.

What's Happening

PowerToys Roadmap

Our prioritized roadmap of features and utilities that the core team is focusing on.

0.60 - June 2022 Update

In this release, we focused heavily on stability and improvements. Below are some of the highlights!

Highlights

  • PowerRename and Image Resizer now appear on the new Windows 11 context menu.
  • There's a new PowerToys Run plugin for OneNote. Thanks @palenshus!
  • FancyZones uses a new zone identification with monitor Id to increase stability and avoid zone resets.
  • AlwaysOnTop now uses rounded corners for highlighting rounded windows on Windows 11.
  • Added settings to PowerToys Run to better control the query results order. Thanks @jefflord!

Known issues

General

  • Upgraded the Windows App SDK runtimes to 1.1.1. (This was a hotfix for 0.59)

Always on Top

  • Added support for more diverse keyboard shortcuts with a fallback to low level keyboard hooks. Thanks @davidegiacometti!
  • Added rounded corner highlights for rounded corner windows on Windows 11.

FancyZones

  • Fixed a bug where windows shown on all desktops were not working with FancyZones. (This was a hotfix for 0.59)
  • When changing zone layouts, windows will match a new size/position if the option is on. (This was a hotfix for 0.59)
  • Minor UI fix in FancyZones Editor. Thanks @ZetaSp!
  • Fixed proper canvas layout rendering in FancyZones Editor and the unscaled monitor resolution is now shown.
  • Fixed an issue with transparency in certain windows causing the window to go blank.

Image Resizer

  • The Image Resizer entry is now shown in the new Windows 11 context menu.

File explorer add-ons

  • Add a viewBox attribute to svg file thumbnails so that it tries to show the whole image, similar to what was done in the preview handler.
  • Removed access to a remote image in the tests for markdown preview.
  • Fixed flakiness in the markdown preview test suite with proper component initialization timeouts.
  • Fixed the leaking WebView2 resources caused by svg thumbnails.

Keyboard Manager

  • The Editor title bar is now shown in the immersive dark mode theme. Thanks @WilliamABradley!

Mouse utility

  • The Mouse Pointer Crosshairs default activation shortcut was changed to not collide with a special character combination on some internation keyboards.

PowerRename

  • Fixed the file enumeration logic to only change enumerations at the end of the file name.
  • Clicking on regex/date and time cheat sheet appends that item to the selected search or replace text field.
  • The PowerRename entry is now shown in the new Windows 11 context menu.
  • The title bar is now shown in the immersive dark mode theme. Thanks @WilliamABradley!

PowerToys Run

  • A setting was added to disable and configure the input delay on searching queries. (This was a hotfix for 0.59)
  • Fixed and added logs for default Web Browser detection. (This was a hotfix for 0.59)
  • The Program plugin can now search .lnk shortcuts by their executable name. Thanks @davidegiacometti!
  • A new plugin for OneNote was added. Thanks @palenshus!
  • Query caching and delayed execution was added to the OneNote plugin. Thanks @palenshus!
  • Quality of life fixes for the TimeZone plugin, including fixes for empty subtitles, missing time zones and results not being found when expected. Thanks @TobiasSekan!
  • Calls to the obsolete WebRequest API were removed. Thanks @davidegiacometti!
  • Added common names for the share settings in the Settings plugins. Thanks @htcfreek!
  • The Calculator Mages engine was updated to 2.0.1, for higher precision. Thanks for the testing and for pushing for the changes @htcfreek!
  • Translation fixes for the Calculator and TimeDate plugins. Thanks @htcfreek!
  • An entry for "Search Settings" was added to the Settings plugin. Thanks @jefflord!
  • Removed uses of the deprecated BinaryFormatter, which contained vulnerabilities. Thanks @davidegiacometti!
  • Added settings to better control the query results order. Thanks @jefflord!
  • The Terminal plugin now uses a better API to detect installed Terminal packages. Thanks @htcfreek!

Settings

  • Fixed a bug that said an update had failed, even if PowerToys was fully updated. (This was a hotfix for 0.59)
  • OOBE window is resizable. (This was a hotfix for 0.59)
  • OOBE can now show release notes through authenticated proxies.
  • OOBE now hides the x64 and ARM64 installer hashes on the What's New page.
  • Minor UI fix in the Keyboard Manager page. Thanks @ZetaSp!
  • Fix in internal data type of CheckBox controls. Thanks @ghost1372!
  • The title bar is now shown in the immersive dark mode theme. Thanks @WilliamABradley!
  • Fixed a crash accessing/loading the System.Management API on ARM64 versions of Windows.

Installer

  • Fixed signing of the setup custom actions dll in the new pipeline.
  • The Visual C++ redistributable was updated to 14.32.31332 and fixed an installer error when a newer version was installed. Thanks @snickler!
  • Updated the .NET dependency to 6.0.6.

Development

  • Clean up of the CA1031 warning suppression. Thanks @davidegiacometti!
  • Support for ARM64 binaries was added to the Microsoft Store submission task. Thanks @azchohfi!
  • Added code for a tool to help identify monitor IDs.
  • Support for ARM64 binaries was added to the winget package creation task.
  • Updated the Pull Request template to better reflect project changes.
  • Component Governance checks were re-activated on the new main branch.
  • CI is failing to run tests calling the newer WebView 2 version, so these were disabled until a fix is found.
  • Updated the tests SDK to 17.2.0.
  • Nuget package versions used in the solution were consolidated.
  • The CodeQL CI task was disabled in the repo, but was causing issues on forks, so it was removed.
  • A specific Newtonsoft.Json version was specified in tests to avoid a vulnerability present in previous versions.
  • FabricBot configurations were added to the repository.
  • Added a dependabot configuration for updating GitHub actions dependencies. Thanks @naveensrinivasan!
  • Updated the check-spelling action and added quality of life fixes to the workflow. Thanks @jsoref!

What is being planned for v0.61

For v0.61, we'll work on below:

  • Environment Variables Editor PowerToy
  • Screen Measure PowerToy
  • Stability / bug fixes

PowerToys Community

The PowerToys team is extremely grateful to have the support of an amazing active community. The work you do is incredibly important. PowerToys wouldnt be nearly what it is today without your help filing bugs, updating documentation, guiding the design, or writing features. We want to say thank you and take time to recognize your work. Month over month, you directly help make PowerToys a better piece of software.

Code of Conduct

This project has adopted the Microsoft Open Source Code of Conduct.

Privacy Statement

The application logs basic telemetry. Our Telemetry Data page (Coming Soon) has the trends from the telemetry. Please read the Microsoft privacy statement for more information.