ng App Kit
Older versions are tagged and can be found in the releases section.
A starting point for angular applications. This is a boilerplate + build scripts for angular applications. The build scripts is inspired by Ember App Kit and the boilerplate is a modified version of angular-seed. More details about the current version of nAK can be read here.
- Use es6 modules and es6 features.
- Modules will be transpiled to CJS and bundled via Browserify and Babelify.
- Use other CJS modules avaialable in NPM.
- Configuration data is picked from the config json files and converted to an angular constants module.
- All js files are linted and code style is enforced using eslint.
- Dev server with livereload support.
- Minification, concatenation, obfuscation of files for deployment.
To use this,
- Install the dependencies node, grunt and sass.
- Clone the repository.
npm installon the repo location.
- Use the below commands to run the application.
The cli commands are
1. grunt Will build the application. The development build can be found in the './temp' folder. 2. grunt watch Watches changes to the application files('./app/') and rebuilds the application. 3. grunt dist Will compile the application in distribution mode and startup a server. The distribution build can be found in the './dist' folder. 4. grunt server or grunt connect:dev Will start up a server and run the development version of the application. Use this along with the `grunt watch` command for the server to reload automatically based on the changes to the application. 5. grunt connect:dist Will start up a server and run the distribution version of the application.
Run these 2 commands on 2 separate terminals during development -
grunt watch and
grunt server. These commands will rebuild the application for every change in the application and automatically reload the server.
The folder structure is as the following
- app Contains all the application files. Controllers, Directives, Services.. etc are put in separate files in their respective folders. The naming convention of these files are based on the url inside the router.js. For filters, the name of the file is its name hyphentated. - public This folder contains all the files that should not be processed such as images, fonts. The contents in this folder will be copied and deployed. These resources can be referenced via 'assets/' inside your application.
To install external dependicies such as jQuery, run the command
npm i jquery -S which install jQuery into the node_modules directory and add an entry in the package.json file. You can then use an import statement to use it in your application.
The css files should be copied into the
styles/sass folder and renamed with and
_+name of the file+
.scss. This file should be included into
The assets that come with the frontend dependencies should be added into the
Features, Issues Or Contributions