Web Analytics Made Easy - Statcounter
Skip to content


Transforming pyinstaller into a GUI interface so you can create Distributable Python Programs in Binary Format



python -m pip install psgcompiler


python3 -m pip install psgcompiler

GitHub Repo Location



From the command line:


You can also use the psgshortcut utility to make a double-clickable shortcut icon for Windows that can also be pinned to the Taskbar.


If you wish to distribute your Python program to your friends and work colleagues, it can be challenging if they do not have Python installed. Not only will they need Python, they will also need the packages you used in your application.

pyinstaller makes it possible to create a binary executable that includes the Python interpreter so that the person receiving your binary file does not need to do any installation. They can immediately run your file.

psgcompiler was created to make the simple use case, converting a Python project that doesn't external files, one that's trivial. You can provide the name of your python file, click "CONVERT" and you'll be left with a single EXE (on Windows... the file type will be different on Mac and Linux).

If you have a complex program, that's no problem was well. psgcompiler have tabs filled with options that are normally specified on the pyinstaller command line.

"Authored in, but not limited to PySimpleGUI"

Like many of the utilities that have been released as part of the PySimpleGUI project, they were developed using PySimpleGUI, but their use is not limited to PySimpleGUI-based project. psgcompiler is a good example of this.

psgcompiler was written in PySimpleGUI, but the programs you are converting using pyinstaller do not have to be written using PySimpleGUI. They can be any Python program.

How to Use - Default Mode

The default settings for psgcompiler are to produce a single file (e.g. an EXE file on Windows) for your program.

pyinstaller has numerous options. The purpose of psgcompiler is to make accessing these options easier for those not as comfortable with a command line.

Manually Verifying

Notice that there is a Muliline Output in a frame with the title "Command". This is the options that will be used to invoke pyinstaller. You could copy the contents of this output and add "pyinstaller" onto the front, and then execute the command on the command line.