click
Gooey
Our great sponsors
click | Gooey | |
---|---|---|
32 | 60 | |
14,997 | 20,342 | |
1.1% | - | |
8.0 | 0.0 | |
6 days ago | 2 months ago | |
Python | Python | |
BSD 3-clause "New" or "Revised" License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
click
-
click-web: Serve click scripts over the web (Python)
Context: "click" - "Command Line Interface Creation Kit" - easily create CLIs from Python code, via adding decorators: https://github.com/pallets/click
"click-web" in turn turns the click CLI app into a web app with one line of code.
- Anyone want to start a project with me.
-
How does "python3 *file* -*letter* work?
there is also click, it is more straight forward and also nice to keep the relevant code where the code is. https://github.com/pallets/click/
-
Overhead of Python Asyncio Tasks
I don't have huge experience with Python, but I used async code with C#/Typescript and lately I had to use some asyncio magic.
I found this article: https://blog.dalibo.com/2022/09/12/monitoring-python-subproc... and while async/await syntax is the same, it's not entirely clear for me, why there's some event loop and what exactly happens, when I pass function to asyncio.run(), like here: https://github.com/pallets/click/issues/85#issuecomment-5034...
So, you can use it and it's not that hard, but there are some parts that are vague for me, no matter which language implements async support.
-
I am sick of writing argparse boilerplate code, so I made "duckargs" to do it for me
Hmm… did you try such approaches, as [click](https://github.com/pallets/click) or[tap](https://github.com/swansonk14/typed-argument-parser)?
-
lord-of-the-clips (lotc): CLI app to download, trim/clip, and merge videos. Supports lots of sites. Downloads/trims at multiple points. Merges multiple clips.
This app leverages these powerful libraries: - yt-dlp: video downloader - moviepy: video trimmer/merger - click: CLI app creator - rich / rich-click: CLI app styler
-
Shells Are Two Things
I've used click [1] a lot to build Python tooling scripts the past few years. Click usage is "sort of" similar to the author's proposed solution. There's also a small section here [2] that describes some of the issues covered in the article (in context of argparse).
[1] - https://github.com/pallets/click
-
Tomu – A family of devices which fit inside your USB port
I think the success of Arduino in the hardware world can be explained in a similar way, as the relative success of "command line app frameworks" like Click[1], or even much lighter-weight libraries like argparse[2]. You absolutely can get away with using just getopt[3] (and people experienced with it will likely strongly prefer it). However certain factors such as a more declarative API, a nice logo, the existence of an ecosystem (even if you're not actively drawing from it), an official "branded" forum, etc can all play into picking a more complex solution, with more baggage you don't need, certain oddities that may throw users off, etc.
[1]: https://click.palletsprojects.com/
[2]: https://docs.python.org/3/library/argparse.html
[3]: https://man.openbsd.org/getopt.3, https://linux.die.net/man/3/getopt
- something like python's click library?
-
Advice for a final project in python without web?
Exactly! You can also use a library like click (https://github.com/pallets/click) to help take care of the command line side, while you focus on the 'business logic' of your application :)
Gooey
-
Gooey: My take on a Rusty GUI framework
The name conflicts with a similar python module that allows one to turn any Python console program into a GUI with one line.
https://github.com/chriskiehl/Gooey
- FLaNK Stack Weekly 11 Dec 2023
- Turn (almost) any Python command line program into a full GUI application with one line
-
Gooey: Turn almost any Python command line program into a full GUI application
Hey! Cool project! I have a question: why do you dump out sys.argv to a local file in the CWD? [0] tmp.txt is hardly a unique name… or am I missing something and this never triggers?
[0] https://github.com/chriskiehl/Gooey/blob/be4b11b8f27f500e732...
-
PysimpleGUI
This might be of interest to you:
> Gooey - Turn (almost) any Python 3 Console Program into a GUI application with one line
https://github.com/chriskiehl/Gooey
-
Python GUIs
I love gooey: https://github.com/chriskiehl/Gooey
It allows me to quickly slap a GUI on an existing script that accepts command-line-arguments. In the end, I get the best of both world: Discoverability from the GUI, automation through the script, and automatic feature parity between the two.
Downside: Control over the GUI layout is basic, and only "standard" GUI features work, but I never felt limited when using it.
-
Launch HN: Onu (YC W23) – Turn scripts into internal tools in minutes
similar for local/individual usage:
https://github.com/chriskiehl/Gooey - take a python-CLI, make a TK-windows
and then probably even simple dashboarding like streamlit.
-
This package will "GUI-fy" your functions!
Like Gooey?
-
Question about 'chaining' Python scripts
As for how I'd handle it, I would probably combine both into one command-line program, with all filepaths using pathlib and letting argparse handle the options. That way you could optionally generate a GUI with gooey with little extra effort, although this would also add a dependency.
What are some alternatives?
typer - Typer, build great CLIs. Easy to code. Based on Python type hints.
Python Fire - Python Fire is a library for automatically generating command line interfaces (CLIs) from absolutely any Python object.
Tkinter-Designer - An easy and fast way to create a Python GUI 🐍
python-prompt-toolkit - Library for building powerful interactive command line applications in Python
cement - Application Framework for Python
asciimatics - A cross platform package to do curses-like operations, plus higher level APIs and widgets to create text UIs and ASCII art animations
cliff - Command Line Interface Formulation Framework. Mirror of code maintained at opendev.org.
PySimpleGUI - Python GUIs for Humans! PySimpleGUI is the top-rated Python application development environment. Launched in 2018 and actively developed, maintained, and supported in 2024. Transforms tkinter, Qt, WxPython, and Remi into a simple, intuitive, and fun experience for both hobbyists and expert users.
docopt - This project is no longer maintained. Please see https://github.com/jazzband/docopt-ng