Home

Awesome

<h1 align="center"> <a name="logo" href="https://deckbrew.xyz/"><img src="https://deckbrew.xyz/static/icon-45ca1f5aea376a9ad37e92db906f283e.png" alt="Deckbrew logo" width="200"></a> <br> Decky Loader <br> <a name="download button" href="https://github.com/SteamDeckHomebrew/decky-installer/releases/latest/download/decky_installer.desktop"><img src="./docs/images/download_button.svg" alt="Download decky" width="350px" style="padding-top: 15px;"></a> </h1> <p align="center"> <a href="https://github.com/SteamDeckHomebrew/decky-loader/releases"><img src="https://img.shields.io/github/downloads/SteamDeckHomebrew/decky-loader/total" /></a> <a href="https://github.com/SteamDeckHomebrew/decky-loader/stargazers"><img src="https://img.shields.io/github/stars/SteamDeckHomebrew/decky-loader" /></a> <a href="https://github.com/SteamDeckHomebrew/decky-loader/commits/main"><img src="https://img.shields.io/github/last-commit/SteamDeckHomebrew/decky-loader.svg" /></a> <a href="https://weblate.werwolv.net/engage/decky/"><img src="https://weblate.werwolv.net/widgets/decky/-/decky/svg-badge.svg" alt="Translation status" /></a> <a href="https://github.com/SteamDeckHomebrew/decky-loader/blob/main/LICENSE"><img src="https://img.shields.io/github/license/SteamDeckHomebrew/decky-loader" /></a> <a href="https://deckbrew.xyz/discord"><img src="https://img.shields.io/discord/960281551428522045?color=%235865F2&label=discord" /></a> <br> <br> <!-- <img src="https://media.discordapp.net/attachments/966017112244125756/1012466063893610506/main.jpg" alt="Decky screenshot" width="80%">--> </p>

๐Ÿ“– About

Decky Loader is a homebrew plugin launcher for the Steam Deck. It can be used to stylize your menus, change system sounds, adjust your screen saturation, change additional system settings, and more.

For more information about Decky Loader as well as documentation and development tools, please visit our wiki.

๐ŸŽจ Features

๐Ÿงน Clean injecting and loading of multiple plugins.
๐Ÿ”’ Stays installed between system updates and reboots.
๐Ÿ”— Allows two-way communication between plugins and the loader.
๐Ÿ Supports Python functions run from TypeScript React.
๐ŸŒ Allows plugins to make fetch calls that bypass CORS completely.

๐Ÿค” Common Issues

๐Ÿ’พ Installation

  1. Prepare a mouse and keyboard if possible.
    • Keyboards and mice can be connected to the Steam Deck via USB-C or Bluetooth.
    • Many Bluetooth keyboard and mouse apps are available for iOS and Android. (KDE connect is preinstalled on the steam deck)
    • The Steam Link app is available on Windows, macOS, and Linux. It works well as a remote desktop substitute.
    • If you have no other options, use the right trackpad as a mouse and press <img src="./docs/images/light/steam.svg#gh-dark-mode-only" height=16><img src="./docs/images/dark/steam.svg#gh-light-mode-only" height=16>+<img src="./docs/images/light/x.svg#gh-dark-mode-only" height=16><img src="./docs/images/dark/x.svg#gh-light-mode-only" height=16> to open the on-screen keyboard as needed.
  2. Press the <img src="./docs/images/light/steam.svg#gh-dark-mode-only" height=16><img src="./docs/images/dark/steam.svg#gh-light-mode-only" height=16> button and open the Power menu.
  3. Select "Switch to Desktop".
  4. Navigate to this Github page on a browser of your choice.
  5. Download the installer file. (If using firefox, it will be named decky_installer.desktop.download. Rename it to decky_installer.desktop before running it)
  6. Drag the file onto your desktop and double click it to run it.
  7. Either type your admin password or allow Decky to temporarily set your admin password to Decky! (this password will be removed after the installer finishes)
  8. Choose the version of Decky Loader you want to install.
    • Latest Release
      Intended for most users. This is the latest stable version of Decky Loader.
    • Latest Pre-Release
      Intended for plugin developers. Pre-releases are unlikely to be fully stable but contain the latest changes. For more information on plugin development, please consult the wiki page.
  9. Open the Return to Gaming Mode shortcut on your desktop.

๐Ÿ‘‹ Uninstallation

We are sorry to see you go! If you are considering uninstalling because you are having issues, please consider opening an issue or joining our Discord so we can help you and other users.

  1. Press the <img src="./docs/images/light/steam.svg#gh-dark-mode-only" height=16><img src="./docs/images/dark/steam.svg#gh-light-mode-only" height=16> button and open the Power menu.
  2. Select "Switch to Desktop".
  3. Run the installer file again, and select uninstall decky loader.

๐Ÿš€ Getting Started

Now that you have Decky Loader installed, you can start using plugins. Each plugin is maintained by a different developer and has its own uses, but most follow a general structure outlined below.

๐Ÿ“ฆ Plugins

  1. Press the <img src="./docs/images/light/qam.svg#gh-dark-mode-only" height=16><img src="./docs/images/dark/qam.svg#gh-light-mode-only" height=16> button and navigate to the <img src="./docs/images/light/plug.svg#gh-dark-mode-only" height=16><img src="./docs/images/dark/plug.svg#gh-light-mode-only" height=16> icon. This is the Decky menu used for interacting with plugins and the loader itself.
  2. Select the <img src="./docs/images/light/store.svg#gh-dark-mode-only" height=16><img src="./docs/images/dark/store.svg#gh-light-mode-only" height=16> icon to open the Plugins Browser. This is where you can find and install plugins.
    • You can also install from URL in the Settings menu. We do not recommend installing plugins from untrusted sources.
  3. To install a plugin, select the "Install" button on the plugin you want. You can also select a version from a dropdown menu, but this is not recommended.
  4. To update, uninstall, and reload plugins, navigate to the Decky menu and select the <img src="./docs/images/light/gear.svg#gh-dark-mode-only" height=16><img src="./docs/images/dark/gear.svg#gh-light-mode-only" height=16> icon.
    • Keep in mind that uninstalling a plugin will only remove its plugin files, not any other files it may have created.

๐Ÿ› ๏ธ Plugin Development

There is no complete plugin development documentation yet. However a good starting point is the plugin template repository. Consider joining our Discord if you have any questions.

๐Ÿค Contributing

Please consult the wiki page regarding development for more information on installing development versions of Decky Loader. You can also install the Steam Deck UI on a Windows or Linux computer for testing by following this YouTube guide.

  1. Clone the repository using the latest commit to main before starting your PR.
  2. In your clone of the repository, run these commands.
    cd frontend
    pnpm i
    pnpm run build
    
  3. If you are modifying the UI, these commands will need to be run before deploying the changes to your Steam Deck.
  4. Use the VS Code tasks or deck.sh script to deploy your changes to your Steam Deck to test them.
  5. You will be testing your changes with the Python script version. You will need to build, deploy, and reload each time.

โš ๏ธ If you are recieving build errors due to an out of date library, you should run this command inside of your repository.

pnpm update @decky/ui --latest

Source control and deploying plugins are left to each respective contributor for the cloned repos in order to keep dependencies up to date.

๐Ÿ“œ Credits

The original idea for the plugin loader concept is based on the work of marios8543's Steam Deck UI Inject project.