# Angular Extensions Schematics
by [@tomastrajan](https://twitter.com/tomastrajan)

[![license](https://img.shields.io/github/license/angular-extensions/schematics.svg)](https://github.com/angular-extensions/schematics/blob/master/LICENSE) [![Build Status](https://travis-ci.org/angular-extensions/schematics.svg?branch=master)](https://travis-ci.org/angular-extensions/schematics) [![Twitter Follow](https://img.shields.io/twitter/follow/tomastrajan.svg?style=social&label=Follow)](https://twitter.com/tomastrajan)

## Getting started
1. enter your project which was generated with Angular CLI v6+.
2. install dependencies with `npm i -D @angular-extensions/schematics` and `npm i -S ngx-model`
3. generate model services with `ng g @angular-extensions/schematics:model --name path/my-model`
4. or with `ng g @angular-extensions/schematics:model --name path/my-model --items` form model of collection of items
5. add your own model service methods and tests

![Generating model using schematics](https://raw.githubusercontent.com/angular-extensions/schematics/master/assets/model-schematics.gif)

## Supported schematics
* model
* something else (please file an [issue](https://github.com/angular-extensions/schematics/issues) 
  with the description of desired behaviour)

## Development of additional schematics

If you would like to create a PR with additional useful schematics these commands may be useful...

### Testing

Use `npm link` in the project directory and `npm link @angular-extensions/schematics` 
in target project which was generated by Angular CLI.

Then you can execute available schematics with 
`ng g <@angular-extensions/schematics:<selected-schematics> --name <path/name>` to try it out.

### Unit Testing

`npm run test` will run the unit tests, using Jasmine as a runner and test framework.
 