Flight package generator
Install Node.js (which comes with npm). It's best to have
1.2.x or above installed.
Next, globally install the Flight package generator.
npm install -g generator-flight-package
Make a new directory, and
cd into it:
mkdir flight-packagename && cd $_
You're now ready to generate a package!
To generate a standalone Flight component as a package:
yo flight-package <package-name>
N.B. All your Node and client-side dependencies will be installed automatically
unless you include the
Flight makes it easy to create, share, and depend on standalone Flight components, e.g., flight-storage. This generator is designed to setup everything you need to create a Flight component suitable for registration with the Bower package manager.
yo flight-package foo
Produces a package named
flight-foo with the following output:
. ├── bower_components ├── lib │ └── foo.js ├── node_modules ├── test │ ├── spec │ │ └── foo.spec.js │ └── test-main.js ├── .gitattributes ├── .gitignore ├── .jshintrc ├── .travis.yml ├── CHANGELOG.md ├── CONTRIBUTING.md ├── LICENSE.md ├── README.md ├── bower.json ├── package.json ├── karma.conf.js └── Gruntfile.js
Locally installed software
Automatically installs all the Flight framework dependencies, and sets up a Node-based toolchain for your development workflow.
Running your package's tests
The generated package uses a local installation of Karma to run the unit tests. Karma makes it easy to run and automatically re-run your unit tests in real browsers:
This is the recommended approach because the moment your unit tests start failing, you'll be notified in the terminal.
To run your unit tests just once in PhantomJS (for CI), you must install PhantomJS and then run:
For further information about configuring Karma, please refer to the Karma website.
Releasing new versions of your package
The generated package uses Grunt to help automate the process of incrementing version numbers in package manifests, commiting the changes, tagging a new release, and pushing the changes and tags to your remote repository. This can all be done with the following command (remember to update your CHANGELOG first):
Alternatively, you can use the following command to bump the versions and do nothing else:
Contributing to this project
Anyone and everyone is welcome to contribute. Please take a moment to review the guidelines for contributing.