This Yeoman generator allows you to start an iBox web app with the best Developer Experience out of the box!
No matter what framework or module management you want to use, we got you covered with a cutting edge working configuration.
We use Gulp 4 as a task manager but we'll ask you questions about:
- Modules management: Webpack, SystemJS, none
- JS preprocessor: Babel, TypeScript, none
- CSS preprocessor: Sass, Stylus, Less, none
This generator is a sub-generator of the the Yeoman Fountain generator for webapps generator-fountain-webapp.
To take profit of the best of the Yeoman infrastructure, we heavily relies on the composability natures of the generators.
Thereby, each needs of your future application will be addressed by a dedicated Yeoman generator (each will be used depending of the options you selected or not).
More informations in DESIGN.md.
This generator is targeted to be used with Node >= 4.0.0 and NPM => 3.0.0. You can check your version number with the command
node --version && npm --version
npm install -g yo
npm install -g generator-ibox
mkdir my-new-project && cd my-new-project
yo ibox
npm run build
to build an optimized version of your application in /distnpm run serve
to launch a browser sync server on your source filesnpm run serve:dist
to launch a server on your optimized applicationnpm run test
to launch your unit tests with Karmanpm run test:auto
to launch your unit tests with Karma in watch mode
If you have gulp-cli
installed in global packages you can use equivalent:
gulp
orgulp build
gulp serve
gulp serve:dist
gulp test
gulp test:auto
If you don't have gulp-cli
installed in global, you should have this error:
/usr/local/lib/node_modules/gulp/bin/gulp.js:121 gulpInst.start.apply(gulpInst, toRun); TypeError: Cannot read property 'apply' of undefined
Few sub-generators are available. You can see the full list by running yo --generators
.
Each generator has 2 options:
- You can set the name of the generated item with
--name
- You can set the path of the generated item with
--dir
Available Sub Generators
- module
- component
- directive
- service
- filter
- app
- hello
- techs
- todoMVC
Example:
yo ibox:module --name login --dir components/login
yo ibox:component --name loginComponent --dir components/loginComponent
yo ibox:service --name loginService --dir components/loginService
yo ibox:directive --name loginDirective --dir components/loginDirective
yo ibox:filter --name loginFilter --dir components/loginFilter