An Angular starter featuring Angular 5 and Webpack includes (Tslint, Codelyzer, Composedoc, Moq.ts, Fixture)
This project is well supported with vscode editor. Easy deployment with PCF (pivot clound foundry).
Uses .scss
files for styling and no .css
loaders are configured, add your own css loaders to support .css
extensions
npm install
to install dependenciesnpm run serve
quick launch of webpack-devserver that supports live-reloadnpm run build
build development ready files to dist directorynpm run publish
build production ready files to public directorynpm run serve:dev
starts dev server locallynpm run serve:prod
starts production ready server locally and watch out file loading response times.npm run lint
runs coding standards rules across entire project (these rules can be set in tslint.json)npm start
build and start production ready servernpm run test:karma
karma-chrome-launcher runs the jasmine unit test cases in chrome browsernpm run webdriver:start
start the selenium webdriver before running protractor e2e testsnpm run test:protractor
launch the protractor e2e tests
Before running
serve:dev
andserve:prod
, make sure thenpm run build
andnpm run publish
are executed to build output files.
-
config
Webpack configuration files for different enviroments.
-
pcf_settings
PCF deployment steps and files.
-
src
Angular source code.
-
e2e
End to End tests.
-
vscode_settings
VSCode editor configuration files specific to angular. Copy these files to your local .vscode project directory and you will automatically get suggestions to install plugins. Install these plugins for good dev experience.
-
pcf_steps.txt
Explains how to deploy your application to PCF environment
-
installation.txt
Explains the softwares required to start building angular-starter application
- Easy switching between early and lazy load of modules in angular by configuring global.lazyLoad property in
config/start.js
- Support to load external files like bootstrap, jquery in 3 configurable ways in
config/webpack.build.js
- Load via CDN, configure cdn property in
config\webpack.pkgs.js
- Load via Local modules, configure local in
config\webpack.pkgs.js
- Load local modules but bundle them, import those files in
src/vendor.ts
with extensions
- Load via CDN, configure cdn property in
Comment local modules import in
vendor.ts
when you choose cdn | local
- Easy switch between hash and non hash based url. Configure
src/app/app.configuration.ts
- Angular supports CaseSensitiveUrling which is the default web standard, configurable
src/app/app.configuration.ts
- Enable angular prod mode by setting environment: prod property in
src/app/app.configuration.ts
- This project uses webpack-conditional-loader to support easy switch between lazy and early load of modules.
- This project uses codelyzer for configuring coding standards across teams.
- This project uses composedoc to build your angular documentation, we can look at generated docs for quick understanding of project architecture.
@NgModule
configuration object splitted out to seperate.config
file undersetup
directory for each module (ex: About) to increase the smooth development in testing the components
- Move app configuration from app.configuration.ts to app.configuration.json to reduce rebuild on configuration changes but this requires us to do http.get request on application startup because angular can only read .ts files and not the .json files.
- Configure sourcemaps builds for specific .ts files. We can exclude vendor.ts, polyfiils.ts from source maps generation.