I recently wrote a Python script to log changes in the selected folder. The script has a GUI based on Tkinter, the native Python library.

I decide to rewrite this script in the Golang. I only need one executable file that doesn’t require Python installation. Before that, I made an executable file using pyinstaller. But why not try Golang?

Apart from Tkinter, I only know a little about the GTK. I used it for a new version of the program written in Golang with a GUI.

It wasn’t the best option. Running on Windows requires about 30 MB of multiple dll files along with the executable file. I couldn’t compile a program with a static linked graphics library. Even stackoverflow didn’t help me.

As a result, I wrote a program.

But I kept looking for alternative libraries to help me write a simple GUI program on Windows that doesn’t require additional dependencies. It looks like I found the right library for my task. This is a lxn/walk.

I haven’t figured out everything I need. For example, I had to change some source code to add a scroll bar to the TextEdit widget (the win.WS_VSCROLL flag has been added to func NewTextEditWithStyle when creating the widget).

For simple Win GUI applications, I think this library is the best choice.

Here’s what I got

The source code and instructions for compilation are here.