StencilJS generators
Very much a WIP. Major refactoring underway in page-component branch
Please help improve it so we can get a good modern generator (and underlying infrastructure to make it easy to maintain and extend...)
First, install Yeoman and generator-stenciljs using npm (we assume you have pre-installed node.js).
npm install -g yo
npm install -g generator-stenciljs
Then generate your new project:
yo stenciljs
-
app
(default) to generate a fresh StencilJS app -
component
to generate a fresh skeleton StencilJS component
To see a list of options and arguments you can pass:
yo stenciljs --help
yo stenciljs:component --help
The generator comes with the following sub-generators:
-
component
to generate a fresh skeleton component
The main app
generator composes with the following (helper) generators:
-
boilerplate
to download a project boilerplate from a repo -
extend
to extend your project (mostly auto-fillingpackage.json
)
The extend
generator composes with the following (helper) generators:
-
git
to add git specific details -
readme
to populate readme
Extend also generates a bundles.json
file suitable for auto registration (See component
generator - currently disabled)
Any of these generators can be used stand-alone.
The boilerplate
generator can currently use either Sao or download-repo to fetch/generate the boilerplate project.
If you opt to use Sao, please create a template to suit your specific needs.
Beware that the generator will change project root if it finds a .yo-rc.json
file in a parent directory. Yeoman will print this warning message:
Just found a `.yo-rc.json` in a parent directory.
Setting the project root at: /Users/user-name/repos
Which causes process.cwd()
to change.
Simply create an npm link:
generator-stenciljs $ npm link
That will install your project dependencies and symlink a global module to your local file.
After npm is done, you'll be able to call yo stenciljs
and test in a "sandbox" location of your choice, a quick and dirty approach).
You can also write tests in the __tests__
folder, a more refined approach :)
- Yeoman has a heart of gold.
- Yeoman is a person with feelings and opinions, but is very easy to work with.
- Yeoman can be too opinionated at times but is easily convinced not to be.
- Feel free to learn more about Yeoman.
MIT © Kristian Mandrup