Skip to main content

Trayifier

A small windows utility to hide any application's window and create a tray icon for it. Mostly it is meant to tack on a tray icon and minimize-to-tray function to software that doesn't come with that option.

Installation

Trayifier is strictly a windows utility. It may be installed via pip for Python 3.6+ via pip install trayifier

A help menu is available via trayifydbg -h

You may also download a standalone compiled executable here.

How to Run Trayifier

If Trayifier was installed via pip, two commands will be available: trayify and trayifydbg. The first is silent and non-blocking, the second will stay active on the console and print help & debug information to it.

There are multiple ways to run Trayifier:

  • Install Trayifier via pip and execute it via trayify -f path\to\exe, either via the terminal or via a script or shortcut. This will also work via trayify -f path\to\directory\with\one\exe if there is exactly one executable in that directory other than Trayifier itself.
  • Run trayify without specifying an executable, Trayifier will check if there is a single executable other than itself in the current working directory and just run that.
  • Put the compiled standalone executable into a directory that contains exactly one executable other than Trayifier itself, and run it without any additional arguments. Trayifier will then automatically choose that other executable to run. Note that due to PyInstaller limitations, the standalone executable does not currently support verbose mode.

By default, Trayifier will attempt to extract the tray icon from the executable file itself, and if that fails, the standard Python icon will be used instead. If you want the tray icon to be something specific, create an .ico file of the same name as the executable you want to run and place it in the same directory, for example: Run-me.exe for the executable and Run-me.ico for its icon file, located right next to each other.

Behaviour of Trayifier

Trayifier will run the target application and create a tray icon for it. Either double-clicking the icon or right-clicking and then choosing Toggle will hide and bring the window up again, respectively. When Exit is chosen from the menu, Trayifier will attempt to close the application via a SIGTERM signal. If the trayified process ends, the next time trayifier registers an event (such as clicking the tray icon), trayifier will stop running.

Known Issues

  • It is not currently possible to pass arguments to the trayified application.

Possible Future Improvements

  • Add a mode to bring up a mechanism to choose an already open window to add a tray icon to.
  • Detect when the window is getting minimized and offer actual minimize-to-tray functionality.
  • The size of the compiled version is quite large and startup time is not optimal, maybe a different compilation process such as Nuitka might yield better results.

Metadata

Release files for Trayifier 1.2.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for Trayifier 1.2.3
File Size Uploaded
Trayifier-1.2.3.tar.gz 11.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for Trayifier 1.2.3
File Interpreter ABI Platform
Trayifier-1.2.3-py3-none-any.whl Python 3 none any Details

Total release size: 25.7 kB

Release files / Trayifier-1.2.3.tar.gz

Download URL Trayifier-1.2.3.tar.gz
Size 11.2 kB
Tags Source
SHA-256 checksum
How to use checksums
a852a711bb93f0847e20d2553716b5f21cda2fa5ad2eeed206adccb8eb364b01
BLAKE2b-256 checksum
How to use checksums
5e877bc571e98866bf252b087a6fe4485d00afd37103ba9ab7c6fdfc61968727
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.8

Release files / Trayifier-1.2.3-py3-none-any.whl

Download URL Trayifier-1.2.3-py3-none-any.whl
Size 14.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
aec44518478f1f8ff7933d7ded85b683872430563d35a61614bf67afcecb7daa
BLAKE2b-256 checksum
How to use checksums
ff8858825ec138b8aae6720b1ce588cad79654331a6e715ebbe021fed82895c4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.8

Release history Release notifications | RSS feed

This release

1.2.3 This release

2 release files

1.2.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page