Installing Plugins
Plugins are not part of the application. Nothing is preinstalled: you pick the plugins you need from the store built into the app and install them on demand. Both parser plugins (read a game's bindings) and output plugins (do something with your exported diagrams) work this way.
Because plugins are separate downloads, they also update separately. A parser fix for a game patch reaches you as soon as it is published, without waiting for the next Joystick Diagrams release. Your installed plugins and their settings survive app updates.
Install from the Store
- Open Settings → Plugins.
- Browse the store. It lists all 8 published plugins with their version, author, and whether they are signed.
- Click Install on the one you want. The app downloads it, verifies the archive against the published checksum, and unpacks it.
- Configure it on the same page. Most parser plugins just need pointing at a folder or file.
The store reads its catalogue from joystick-diagrams.com/plugins_manifest.json, so newly published plugins appear without an app update. The Plugins page is generated from the same file.
Updating a Plugin
When a newer version of an installed plugin is published, the store flags it and offers an Update button. Updates are per plugin, so you can take a parser fix without touching anything else. Your plugin settings are carried across.
Manual Install
The store is the normal route. Manual installs are for working offline, testing a build a developer sent you, or iterating on a plugin you are writing yourself.
From a Zip
- Open Settings → Plugins.
- Click Install from File and select the
.zip. - Joystick Diagrams validates the archive, extracts it, and lists the plugin ready to configure.
By Folder
If you would rather manage plugin files yourself, drop them straight into the plugins folder. Click Open Plugins Folder in Settings, or go there directly:
%APPDATA%\Roaming\Joystick Diagrams\parser_plugins\%APPDATA%\Roaming\Joystick Diagrams\output_plugins\
Each plugin is a subfolder with an __init__.py and main.py.
Restart the application after copying files in. Plugins added this way are not tracked by the
store, so they will not show update prompts.
Plugin Trust & Signing
Plugins run arbitrary Python in the same process as Joystick Diagrams, so there is a signing and trust model to keep you safe. Plugins fall into three states:
Ships with a plugin.sig file signed by the Joystick Diagrams
developer key. Runs without prompting.
No signature file, or the signature didn't verify. A trust dialog is shown on first use; you choose whether to run it.
An unsigned plugin you've approved. The decision is remembered so you're not prompted again.
Being in the store is not the same as being signed. Community plugins are listed on their author's reputation, and the store shows you which are signed before you install anything.
Uninstalling a Plugin
Every plugin can be removed. On the Settings page, click the trash icon on the plugin's card to delete its files. Your configured settings are preserved, so if you reinstall later, your last configuration is restored.
If you want to keep a plugin but stop it running, disable it instead of removing it.