<commit_before>.callout.is-helpful
  header Angular is in developer preview
  p.
    This quickstart does not reflect the final development process for writing apps with Angular.
    The following setup is for those who want to try out Angular while it is in developer preview.

// STEP 1 - Create a project ##########################
.l-main-section
  h2#section-create-project 1. Create a project

  p.
    This quickstart shows how to write your Angular components in TypeScript. You could instead choose
    another language such as <a href="/docs/dart/latest/quickstart.html">Dart</a>, ES5, or ES6.

  p.
    The goal of this quickstart is to write a component in TypeScript that prints a string.
    We assume you have already installed <a href="https://docs.npmjs.com/getting-started/installing-node">Node and npm</a>.

  p.
    To get started, create a new empty project directory. All the following commands should be run
    from this directory.

  p.
    To get the benefits of TypeScript, we want to have the type definitions available for the compiler and the editor.
    TypeScript type definitions are typically published in a repo called <a href="http://definitelytyped.org/">DefinitelyTyped</a>.
    To fetch one of the type definitions to the local directory, we use the <a href="https://www.npmjs.com/package/tsd">tsd package manager</a>.

  code-example.
    $ npm install -g tsd@^0.6.0
    $ tsd install angular2 es6-promise rx rx-lite

  p.
    Next, create two empty files, <code>index.html</code> and <code>app.ts</code>, both at the root of the project:

  code-example.
    $ touch app.ts index.html

// STEP 2 - Start the TypeScript compiler ##########################
.l-main-section
  h2#start-tsc 2. Run the TypeScript compiler

  p.
    Since the browser doesn't understand TypeScript code, we need to run a compiler to translate
    your code to browser-compliant JavaScript as you work. This quickstart uses the TypeScript
    compiler in <code>--watch</code> mode, but it is also possible to do the translation in the browser as files
    are loaded, or configure your editor or IDE to do it.

  code-example.
    $ npm install -g typescript@^1.5.0-beta
    $ tsc --watch -m commonjs -t es5 --emitDecoratorMetadata app.ts

// STEP 3 - Import Angular ##########################
.l-main-section
  h2#section-transpile 3. Import Angular

  p Inside of <code>app.ts</code>, import the type definitions from Angular:
  code-example.<commit_msg>fix(quickstart): Add helpful note for Windows users<commit_after>.callout.is-helpful
  header Angular is in developer preview
  p.
    This quickstart does not reflect the final development process for writing apps with Angular.
    The following setup is for those who want to try out Angular while it is in developer preview.

// STEP 1 - Create a project ##########################
.l-main-section
  h2#section-create-project 1. Create a project

  p.
    This quickstart shows how to write your Angular components in TypeScript. You could instead choose
    another language such as <a href="/docs/dart/latest/quickstart.html">Dart</a>, ES5, or ES6.

  p.
    The goal of this quickstart is to write a component in TypeScript that prints a string.
    We assume you have already installed <a href="https://docs.npmjs.com/getting-started/installing-node">Node and npm</a>.

  p.
    To get started, create a new empty project directory. All the following commands should be run
    from this directory.

  p.
    To get the benefits of TypeScript, we want to have the type definitions available for the compiler and the editor.
    TypeScript type definitions are typically published in a repo called <a href="http://definitelytyped.org/">DefinitelyTyped</a>.
    To fetch one of the type definitions to the local directory, we use the <a href="https://www.npmjs.com/package/tsd">tsd package manager</a>.

  code-example.
    $ npm install -g tsd@^0.6.0
    $ tsd install angular2 es6-promise rx rx-lite

  p.
    Next, create two empty files, <code>index.html</code> and <code>app.ts</code>, both at the root of the project:

  code-example.
    $ touch app.ts index.html

// STEP 2 - Start the TypeScript compiler ##########################
.l-main-section
  h2#start-tsc 2. Run the TypeScript compiler

  p.
    Since the browser doesn't understand TypeScript code, we need to run a compiler to translate
    your code to browser-compliant JavaScript as you work. This quickstart uses the TypeScript
    compiler in <code>--watch</code> mode, but it is also possible to do the translation in the browser as files
    are loaded, or configure your editor or IDE to do it.

  code-example.
    $ npm install -g typescript@^1.5.0-beta
    $ tsc --watch -m commonjs -t es5 --emitDecoratorMetadata app.ts

.callout.is-helpful
  p.
    Windows users: if you get an error that an option is unknown, you are probably running
    an older version of TypeScript. 
    See <a href="http://stackoverflow.com/questions/23267858/how-do-i-install-typescript">
    Stack Overflow: How do I install Typescript</a>

// STEP 3 - Import Angular ##########################
.l-main-section
  h2#section-transpile 3. Import Angular

  p Inside of <code>app.ts</code>, import the type definitions from Angular:
  code-example.
{'fraction_non_alphanumeric': 0.10641923878053398, 'fraction_numerical': 0.009089187653853437, 'mean_word_length': 3.401666666666667, 'pattern_counts': {'":': 0, '<': 37, '<?xml version=': 0, '>': 37, 'https://': 4, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7643730', 'n_tokens_mistral': 1546, 'n_tokens_neox': 1460, 'n_words': 656}