Overview

Previous sections covered the www and src directories; this section will go over the remaining directories.

.vscode

This is where the project-specific settings and tasks for the Visual Studio Code IDE are located.

This directory is optional and can be removed if you are not using VS Code.

bower_components (generated)

This is a generated directory created by running the gulp libs task. These files are downloaded by the Bower package manager and can be configured via bower.json.

The libs task also copies the needed files to www/js/libs so they can be used at runtime.

See gulp libs in Gulp Tasks for more details.

Warning

This directory will be removed when executing the gulp clean or gulp clean:libs tasks and should not be committed to source control.

build (generated)

This directory is generated by the gulp package-web and gulp package-chrome tasks. It will contain build artifacts for these platforms.

Warning

This directory will be removed when executing the gulp clean or gulp clean:build tasks and should not be committed to source control.

docs

This directory contains the documentation in markdown format, which are used to generate this documentation site using MkDocs.

This directory is optional and can be removed.

hooks

This directory contains build hook scripts for Cordova's build system.

Cordova Hooks represent special scripts which could be added by application and plugin developers or even by your own build system to customize Cordova commands. - Apache Cordova Hooks Guide

This starter project does not currently ship with any custom build hooks, aside from the "Add Platform Class" script included with Cordova.

See hooks/README.md for more details.

node_modules (generated)

This is a generated directory created when you run npm install from the project directory. It contains all of the third-party software needed to build and run your application (e.g., Cordova, Ionic, gulp, etc.).

Warning

This directory will be removed when executing the gulp clean task and should not be committed to source control.

plugins (generated)

This is a generated directory created when you run the gulp plugins or cordova plugin add commands.

It contains any Cordova plugins used to extend the functionality of the application through native code.

Plugins are installed via the cordovaPlugins property in package.json.

See gulp plugins in Gulp Tasks for more details.

Warning

This directory will be removed when executing the gulp clean or gulp clean:plugins tasks and should not be committed to source control.

tests

This directory contains the unit tests for the application.

Unit tests can be run using the Karma test runner by executing the gulp test task.

Each sub-directory here should mirror the layout of src, with the addition of a .Tests.ts suffix (i.e., a test for src/Services/Utilities.ts should be placed at tests/Services/Utilities.Tests.ts).

See gulp test in Gulp Tasks and Unit Testing for more details.

tests/_references.ts

This file is used to point the TypeScript compiler at the generated type definitions for the compiled application bundle being tested.

tests/tsconfig.json

This file controls parameters passed to the TypeScript compiler and is used when running the gulp ts:tests task or the unit tests via gulp test.

tests/tsd.d.ts (generated)

This file contains references to all of the TypeScript definition files from the DefinitelyTyped repository.

These are installed by the tsd tool via the gulp tsd task. The definition files to be downloaded are specified in tsd.tests.json.

Warning

This file will be removed when executing the gulp clean or gulp clean:tsd tasks and should not be committed to source control.

tests/bundle.tests.js (generated)

This file contains the result of the unit tests' TypeScript compilation.

This is created via the gulp test or gulp ts:tests tasks.

Warning

This file will be removed when executing the gulp clean or gulp clean:tests tasks and should not be committed to source control.

tests/bundle.tests.js.map (generated)

This file contains the source mapping information of the unit tests' TypeScript compilation. This can be used when debugging to step through TypeScript source code instead of JavaScript.

This is created via the gulp test or gulp ts:tests tasks.

Warning

This file will be removed when executing the gulp clean or gulp clean:tests tasks and should not be committed to source control.

typings

This directory contains all of the TypeScript definition files from the DefinitelyTyped repository used by your application.

These are installed by the tsd tool via the gulp tsd task. The definition files to be downloaded are specified in tsd.json.

Warning

All subdirectories will be removed when executing the gulp clean or gulp clean:tsd tasks (except for the custom directory) and should not be committed to source control.

The custom directory contains any custom TypeScript definition files for your application that are not available on the DefinitelyTyped repository.

This is the only subdirectory of the typings directory that should be committed to source control.

typings-tests

This directory contains all of the TypeScript definition files from the DefinitelyTyped repository used by the unit tests.

These are installed by the tsd tool via the gulp tsd:tests task. The definition files to be downloaded are specified in tsd.tests.json.

Warning

All subdirectories will be removed when executing the gulp clean or gulp clean:tsd tasks (except for the custom directory) and should not be committed to source control.

This custom directory contains any custom TypeScript definition files for your application that are not available on the DefinitelyTyped repository.

This is the only subdirectory of the typings-tests directory that should be committed to source control.