I really liked how plop colocates the templates with the project, making them much more maintainable (each project manages its own templates). What I don't like, however, is that I need to go trough a menu int the terminal every time I want to invoke a generator, answering the questions one by one. I prefer giving the generator all it needs to go to work immediatly. So instead of:
$ plop foo [FOO] What is the foo's name? Bar [FOO] More baz or not? Y [FOO] Imports? fleep [FOO] Imports? floop [FOO] Imports? flap [FOO] Imports? ...
I like to write:
$ genial foo --name Bar --baz --import fleep --import floop --import flap
genial you can define all the templates parameters and how they should
genial takes care of the rest. Everything that is specified on
the command line will not be asked, everything that isn't will be asked just
like with plop. All a template writer needs to do is specify the
names and types of the parameters and possibly add a description.
allow for other options to be set in
boolean flags should hvae a
no-nameversion to explicitly set to false