Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/maximilianschmitt/ng-autobootstrap
Automatically create bootstrap files for requiring your angular modules with browserify.
https://github.com/maximilianschmitt/ng-autobootstrap
Last synced: 2 months ago
JSON representation
Automatically create bootstrap files for requiring your angular modules with browserify.
- Host: GitHub
- URL: https://github.com/maximilianschmitt/ng-autobootstrap
- Owner: maximilianschmitt
- License: mit
- Created: 2014-08-08T22:04:31.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2015-03-05T14:07:32.000Z (almost 10 years ago)
- Last Synced: 2024-10-30T03:38:32.599Z (2 months ago)
- Language: JavaScript
- Size: 188 KB
- Stars: 14
- Watchers: 2
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ng-autobootstrap
![Travis Build](http://img.shields.io/travis/maximilianschmitt/ng-autobootstrap.svg?style=flat)
> Automatically create bootstrap files for including your angular modules (like controllers and directives) with browserify.
>
> Inspired by [ng-classify](https://github.com/CaryLandholt/ng-classify).## Gulp plugin
Check out [gulp-ng-autobootstrap](https://github.com/maximilianschmitt/gulp-ng-autobootstrap)!
## Installation
```
npm install ng-autobootstrap
```## API
### new NgAutoBootstrap([options])
Creates a new `NgAutoBootstrap` object with the specified options.
### ngAutoBootstrap.bootstrap(filePaths)
Returns a string with the generated bootstrap file contents.
## Configuring ng-autobootstrap
### Options
Override default options by passing them to the `NgAutoBootstrap` constructor.
``` js
var ngAutoBootstrap = new NgAutoBootstrap({
bootstrap: {
path: 'config/bootstrap.js'
}
});
```#### options.bootstrap
This is where you configure the path to your bootstrap file. ng-autobootstrap needs to know this paths so that it can generate relative paths to the angular modules that are being pulled in.
#### options.moduleTypes.{{moduleType}}.path
A glob for identifying the respective module type by its file path.
#### options.moduleTypes.{{moduleType}}.casing
How the file name should be transformed to its module name. Supports everything that [change-case](https://github.com/blakeembrey/change-case) supports.
E.g. if a controller file is called `my-awesome-controller.js`, it will be registered as `MyAwesomeController` with `pascalCase` or `myAwesomeController` with `camelCase` in your angular app.
#### options.moduleTypes.{{moduleType}}.prefix
A prefix to add to each module name of the respective module type.
#### options.moduleTypes.{{moduleType}}.suffix
A suffix to add to each module name of the respective module type.
#### options.moduleTypes.{{moduleType}}.omit
A string to omit from the filename before casing it.
E.g. if a service file is called `user-service.js` and you set `options.moduleTypes.service.omit = '-service'`, then the resulting module will be registered with angular via `app.service('User', ...);` (assuming PascalCasing).
### Default options
Prefixes, suffixes and omits are not set by default.
``` js
var defaultOptions = {
bootstrap: {
path: 'bootstrap.js'
},
moduleTypes: {
animation: {
path: '**/animations/*.js',
casing: 'paramCase'
},
constant: {
path: '**/constants/*.js',
casing: 'constant'
},
controller: {
path: '**/controllers/*.js',
casing: 'pascalCase'
},
directive: {
path: '**/directives/*.js',
casing: 'camelCase'
},
factory: {
path: '**/factories/*.js',
casing: 'pascalCase'
},
filter: {
path: '**/filters/*.js',
casing: 'camelCase'
},
provider: {
path: '**/providers/*.js',
casing: 'camelCase'
},
service: {
path: '**/services/*.js',
casing: 'camelCase'
},
value: {
path: '**/values/*.js',
casing: 'camelCase'
},
// config modules are pulled in like this: app.config(require('./path/to-config'))
config: {
path: '**/*-config.js'
}
}
};
```