ng-factory
Version:
An **upgradable** development workflow library built on top of Gulp and focused on AngularJS components and applications.
125 lines (66 loc) • 3.1 kB
Markdown
# ng-factory
An **upgradable** development workflow library built on top of Gulp and focused on AngularJS components and applications.
**ng-factory** is based on **best practices** and covers the whole development lifecycle :
- **Developement** : code quality, preprocessors...
- **Build** : minification, concat, inject...
- **Documentation** : README + HTML doc & examples...
- **Publication** : TRAVIS CI integration, releases branches...
## Customisation
### Customize the README
You can customize the README by adding a `docs/README.tpl.md`. This is a [nunjucks](http://mozilla.github.io/nunjucks/) template and it extends the [default ng-factory template](lib/templates/readme/README.tpl.md).
### Add examples
Add examples in the `docs/examples` folder, with a subfolder for each example.
Each example can have a single HTML file and any number of CSS, SCSS... and javascript files.
### Add Travis-CI
- signup to [travis-ci.com](http://travis-ci.com)
- activate your repository
### Add CodeClimate
- signup to [codeclimate.com](http://codeclimate.com)
- activate your repository
- add the token to `.travis.yml`
## File slitting
For the sake of clarity and coherence
- Main ng-factoty tasks are in the **tasks folder**
- Template files are in the **templates folder**
- Utility transforms are in the **transforms folder**
## Tasks
Task name example : `ng-factory:src/jshint`.
- `ng-factory` is the namespace
- `src/jshint` the targeted task
### ng-factory:src
#### ng-factory:src/jshint
Jshint the sources
### ng-factory:test
#### ng-factory:test/jshint
Jshint the tests
## Transforms
Bypass gulp plugins directly using the official node lib to to the work.
### clean-css
### concat-scripts
### debug
### jade
### js-beautify
### less
### ng-annotate
### template
### uglify-js
## Pages customization
The pages are highly customizable. The pages templating is provided by (Nunjucks)[mozilla.github.io/nunjucks/].
We integrate a default page with the factory but you can change everything if you please.
The basic pages generation workflow is **copy every thing to the `.tmp/docs` folder and generate what you need to output in the `pages` folder**.
### Default template
`ng-factory/templates/pages/index.nunjucks.html` is the default template file.
> [...] More documentation here [...]
### Views Blocks
By extending the `{% extends "views/base.nunjucks.html" %}` default template you can customize different blocks.
**Note: you can use `{{ super() }}` to render parent blocks**
- **ng-factory/templates/pages/views/base.nunjucks.html**
- **head** for the `<head>` content
- **body** for the `<body>` content
- **foot** fot the "`<foot>`" content (what comes after the content into the body)
### Includes Blocks
- **ng-factory/templates/pages/views/includes/head.nunjucks.html**
- **headLinks** for the css scripts at the end of the `<head>` tag
- **ng-factory/templates/pages/views/includes/foot.nunjucks.html**
- **footScripts** for the js scripts at the end of the `<body>` tag
> [...] More documentation here [...]