Skip to content
Stephan edited this page Jul 6, 2016 · 6 revisions

This package is more about an idea than an implementation. For its motivation take a look at the README. If the goals appeal to you, read on.

Thinking about possible implementations lead us (currently) to three possible approaches.

  1. Bake functionality into Yeoman's cli client (yeoman-yo),
  2. Write your generator as a custom adapter on yeoman-env
  3. Provide a CLI tool that handles activating and deactivating external subgens

1) Bake functionality into Yeoman's cli client

Find more information about (1) in The Fully Integrated Happy Path.

Dependencies: requires Yo's maintainers to approve of the idea and merge changes into their packages (or implement them on their own)


2) Write your generator as a custom adapter on yeoman-env

yeoman-yo is nothing other than a tool that implements an adapter for yeoman-env, which in turn does most of Yeoman's infrastructure-related tasks. If we wanted to write an umbrella generator with custom lookup-patterns, we might opt to implement this adapter on our own, gaining maximum flexibility but presumably losing much of the niceties baked into the yo cli already.

Dependencies: requires a generator's author to implement their generator differently than simply using what yo cli and yeoman-generator provides. It may still be valuable to research if it is possible to provide a bridge between yeoman-envand yo-cli, and thus providing a nice and lossless integration path for generator authors.


3) Provide a CLI tool that handles activating and deactivating external subgens

Neither requires any changes in yeoman's core nor existing generators and thus is the actionable start of writing a proof-of-concept for this idea. It is what's available in mainline (currently the proof-of-concept branch) and described in the README as well as in How to Setup a Manual Playground.

Clone this wiki locally