Browser and install GUI for cookiecutter templates

βŒˆβŒ‹ βŽ‡ branch:  cookiedough


Artifact [3451785502]

Artifact 3451785502e3bd98e28d999271bb5e400a003830c285f482edb7b0dafeb67b76:

Wiki page [cookiedough] by mario 2021-03-22 06:19:05.
D 2021-03-22T06:19:05.772
L cookiedough
N text/x-markdown
P 099ca2194982372d7bf82667daf5de6d10823424676385c5006f8691138a09dc
U mario
W 3280
[**cookiedough**(1)](https://fossil.include-once.org/cookiedough/file/manpage/cookiedough.md)
is a GUI browser for cookiecutter templates. And can of course extract them.
It comes with a database of around 2300 cookietemplates, grouped by category, and allows some
rudimentary filtering. Very **early alpha**, but usable. 

![screenshot main window](https://imgur.com/wn9mEny.png)


# Installation / Use

Just install it as normal pip package:

    ~$   pip3 install -U cookiedough

And start it from a terminal window:

    ~/projects$   cookiedough

Keep an eye on the terminal when rolling out a template. Not all prompts
might be captured by monkeypatching.


# Notes

There's some usage information in the man page, and in the →Help→Help.


## Bugs / Caveats

 * The search is still finicky. Right now it starts on any key press;
   [.. might either filter this by ENTER, or add a button to that effect].
 * The README colorization is fairly basic. (But more processsing would
   slow it down too much.)
 * It can crash when speed-scrolling through the templates. (Perhaps PSG
   vs Tk threads issue.)
 * Tkinter might also crash when encountering emojis. (Either install
   Symbola font and get rid of Noto Color Emoji. Or upgrade to tcl/tk
   8.6.10, or go back to Ubuntu 18.04 where it miraculously worked.)


## See also

 * [Improving your cookiecutters.json](https://fossil.include-once.org/cookiedough/wiki/improve)
 * [How/what to contribute](https://fossil.include-once.org/cookiedough/wiki/contribute)
 * [uidata struct](https://fossil.include-once.org/cookiedough/wiki/uidata)
 * [usage](https://fossil.include-once.org/cookiedough/wiki/usage)


## from `project` import `meta`

| meta           | info                                                            |
|:---------------|:----------------------------------------------------------------|
| depends        | [pysimplegui](https://pypi.org/project/PySimpleGUI/), sys:[tkinter](https://docs.python.org/3/library/tkinter.html), [cookiecutter](https://pypi.org/project/cookiecutter/), [pluginconf](https://pypi.org/project/pluginconf/), [appdirs](https://pypi.org/project/appdirs/), [requests](https://pypi.org/project/requests/), ... |
| compat         | Python β‰₯3.8, BSD/Linux                                          |
| compliancy     | xdg, pluginspec, !pep8, !desktop, !xdnd, mallard, man, !netrc, dotenv, !http_proxy, !nobackup, !releases.json, !doap, !packfile |
| system usage   | rare (xdg-open only)                                            |
| paths          | ~/.config/cookiedough/                                          |
| testing        | `None`                                                          |
| docs           | minimal wiki, news                                              |
| activity       | temporary                                                       |
| state          | alpha                                                           |
| support        | email                                                           |
| contrib        | mail, fossil DVCS (create an account or send bundles)           |
| announce       | [freshcode.club](https://freshcode.club/projects/cookiedough)   |


Z 00e6af736f323a0f462e5bd7565ffcfb