Skip to content

romeovs/genial

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Genial

While other generator/templating/scaffolding tools like yeoman and plop are really good at what they do, I felt they somehow still get in the way of the programmer and could be made much simpler.

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

With genial you can define all the templates parameters and how they should be invoked, 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.

Usage

todo

Todo

  • allow for other options to be set in genfile (eg. no-color, verbose, ...)

  • boolean flags should hvae a no-name version to explicitly set to false

  • add genfile.js documentation

About

Co-located templates!

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published