Gooey is a tool for transforming command line interfaces into beautiful desktop applications. It can be used as the frontend client for any language or program. Whether you've built your application in Java, Node, or Haskell, or you just want to put a pretty interface on an existing tool like FFMPEG, Gooey can be used to create a fast, practically free UI with just a little bit of Python (about 20 lines!). To show how this all fits together, and that it really works for anything, we're going to walk through building a graphical interface to one of my favorite tools of all time: FFMPEG. These steps apply to anything, though! You could swap out FFMPEG for a .jar you've written, or an arbitrary windows .exe, an OSX .app bundle, or anything on linux that's executable! In short, it will transform a "scary" terminal command line into an easy to use desktop application that you could hand over to users.
Features
- Gooey is controlled entirely by a plain ol' JSON file
- Gooey is a drop-in replacement for all projects backed by Argparse!
- You can get a UI bolted on in front of an existing CLI application
- Gooey has a bunch of different input widgets
- Gooey is attached to your code via a simple decorator on whichever method has your argparse declarations
- Different styling and functionality can be configured by passing arguments into the decorator