Skip to content

Latest commit

Β 

History

History
132 lines (82 loc) Β· 3.02 KB

checklist.md

File metadata and controls

132 lines (82 loc) Β· 3.02 KB

Community plugin checklist

  • Review the official documentation: New plugin checklist
  • Package the plugin in a zip archive file
  • The plugin folder should have the same name as the plugin
  • The default action keyword for the plugin should be unique
  • The website should be the URL to the GitHub repo for the plugin source code
  • The documentation should be helpful to new users
  • Distribute the plugin as an Asset via GitHub Releases

Zip

Package the plugin in a .zip archive file.

Naming convention:

  • <name>-<version>-<platform>.zip

Platform: x64 | ARM64

Examples:

βœ”οΈ InputTyper-0.2.0-x64.zip

❌ InputTyper.zip

The zip file should contain:

  • A folder with the same name as the plugin
    • An Images folder
      • with dark and light .png icons
    • Plugin .dll files
    • A plugin.json file

Examples:

βœ”οΈ InputTyper-0.2.0-x64.zip:

InputTyper
β”œβ”€β”€ Images
β”‚   β”œβ”€β”€ InputTyper.light.png
β”‚   └── InputTyper.dark.png
β”œβ”€β”€ Community.PowerToys.Run.Plugin.InputTyper.dll
β”œβ”€β”€ Community.PowerToys.Run.Plugin.InputTyper.deps.json
└── plugin.json

Unnecessary files in the zip:

  • PowerToys.Common.UI.dll
  • PowerToys.ManagedCommon.dll
  • PowerToys.Settings.UI.Lib.dll
  • Wox.Infrastructure.dll
  • Wox.Plugin.dll

Folder

The plugin folder should have the same name as the plugin.

The name should be in PascalCase, i.e. without spaces or punctuation and with capitalized words.

Examples:

βœ”οΈ InputTyper

❌ Input Typer

❌ Community.PowerToys.Run.Plugin.InputTyper

In other words, the plugin folder name should match:

  1. The name in the plugin.json file:
    • "Name": "InputTyper"
  2. The last part of the assembly name:
    • Community.PowerToys.Run.Plugin.InputTyper

Community plugins are located here:

  • %LocalAppData%\Microsoft\PowerToys\PowerToys Run\Plugins

For reference, the official plugins are located in one of these places:

  • C:\Program Files\PowerToys\RunPlugins
    • Machine wide installation of PowerToys
  • %LocalAppData%\PowerToys\RunPlugins
    • Per user installation of PowerToys

Action Keyword

The plugin should have a unique default action keyword.

Action keywords for the official plugins:

Examples:

βœ”οΈ @@

❌ =

❌ #

❌ ??

Website

The website in the plugin.json should be the URL to the GitHub repo for the plugin source code.

Examples:

βœ”οΈ "Website": "https://github.com/CoreyHayward/PowerToys-Run-InputTyper",

❌ "Website": "https://github.com/CoreyHayward",

Documentation

Help new users with instructions for:

  • Requirements
  • Installation
  • Usage
  • Configuration

Release

Distribute the plugin by attaching the .zip archive file to a GitHub Release.

Examples:

βœ”οΈ https://github.com/CoreyHayward/PowerToys-Run-InputTyper/releases/tag/v0.2.0