https://drawthings.ai/ provides a closed-source binary that works well with a nice UI as well as a HTTP server you can enable to call different models from other programs/apps.
If you want to manually create images this is the best free choice I've seen so far. It's also pretty low-memory compared to others I've tried. 10GB for their flux.2 [klein] 4b model.
Once you start the Draw Things app pick some models to download, then go to "all settings" and enable the HTTP server. Then call it with CURL:
curl -sS --max-time 600 \
-X POST "http://127.0.0.1:7860/sdapi/v1/txt2img" \
-H "Content-Type: application/json" \
--data '{"prompt":"A misty mountain peak at sunrise, watercolor illustration"}' \
| jq -r '.images[0]' | base64 --decode > generated.png
They also have a gRPC binary you can download (or build) but I wasn't able to connect to it: https://github.com/drawthingsai/draw-things-community/tree/main?tab=readme-ov-file#self-host-grpcservercli-from-packaged-binaries
./gRPCServerCLI-macOS -a 127.0.0.1 --debug ~/Library/Containers/com.liuliu.draw-things/Data/Documents/Models