<commit_before># (M)EAN Stack with Angular 2+ Starter

### Current version: 0.0.1

This is a starting point for (M)EAN stack applications (with Angular 2+ and `http/2`). MongoDB drivers are not setup as part of this boilerplate, but can easily be added (with `mongoose` or some other package). The idea is to have a setup to get you up and running quickly and to be database agnostic. You can easily add a database driver that fits your needs.

## TL;DR

You need:

1. [NodeJS](https://nodejs.org/) v6.9.0+
2. [Angular CLI](https://cli.angular.io) v1.0.0+

Run the app:

1. Generate certs and place them inside `/server/certs`. Generate certs by running this in your terminal `openssl req -x509 -newkey rsa:4096 -keyout ng2-development.key -out ng2-development.pem -days 365`. If the folder `certs` doesn't exist, create it.
2. Run `npm install`
3. Run `npm run build`
4. Start the server with*:

    ```bash
    NODE_ENV="development" SECRET="supersecret" CERTPHRASE="your.cert.password" node server.js
    ```
    
    *If you didn't setup a certificate password, you can omit `CERTPHRASE`.
    
5. Navigate to `https://localhost:8080`


## Not TL;DR

## ToC
1. [What it has](#what-it-has)
2. [Setup](#setup)
    1. [Prerequisites](#prerequisites)
    2. [Prod and Dev](#prod-and-dev)
3. [Development Server](#development-server)
    1. [Node Server](#node-server)
    2. [Lite Server](#lite-server)
4. [Code Scaffolding](#code-scaffolding)
5. [Application Documentation](#application-documentation)
6. [API Documentation](#api-documentation)
7. [Build](#build)
8. [Running Unit Tests](#running-unit-tests)
9. [Running end-to-end Tests](#running-end-to-end-tests)
9. [Linting](#linting)
10. [Notes](#notes)
11. [Further help](#further-help)

<a name="what-it-has"></a>
## What it has
- Angular
- NodeJS (+ExpressJS)
- JWT-based authentication (naive, but can be modified and scaled to fit your needs)<commit_msg>added ToC to the README file<commit_after># (M)EAN Stack with Angular 2+ Starter

### Current version: 0.0.1

This is a starting point for (M)EAN stack applications (with Angular 2+ and `http/2`). MongoDB drivers are not setup as part of this boilerplate, but can easily be added (with `mongoose` or some other package). The idea is to have a setup to get you up and running quickly and to be database agnostic. You can easily add a database driver that fits your needs.

## TL;DR

You need:

1. [NodeJS](https://nodejs.org/) v6.9.0+
2. [Angular CLI](https://cli.angular.io) v1.0.0+

Run the app:

1. Generate certs and place them inside `/server/certs`. Generate certs by running this in your terminal `openssl req -x509 -newkey rsa:4096 -keyout ng2-development.key -out ng2-development.pem -days 365`. If the folder `certs` doesn't exist, create it.
2. Run `npm install`
3. Run `npm run build`
4. Start the server with*:

    ```bash
    NODE_ENV="development" SECRET="supersecret" CERTPHRASE="your.cert.password" node server.js
    ```
    
    *If you didn't setup a certificate password, you can omit `CERTPHRASE`.
    
5. Navigate to `https://localhost:8080`


## Not TL;DR

## Table of Contents
1. [What it has](#what-it-has)
2. [Setup](#setup)
    1. [Prerequisites](#prerequisites)
    2. [Prod and Dev](#prod-and-dev)
3. [Development Server](#development-server)
    1. [Node Server](#node-server)
    2. [Lite Server](#lite-server)
4. [Code Scaffolding](#code-scaffolding)
5. [Application Documentation](#application-documentation)
6. [API Documentation](#api-documentation)
7. [Build](#build)
8. [Running Unit Tests](#running-unit-tests)
9. [Running end-to-end Tests](#running-end-to-end-tests)
9. [Linting](#linting)
10. [Notes](#notes)
11. [Further help](#further-help)

<a name="what-it-has"></a>
## What it has
- Angular
- NodeJS (+ExpressJS)
- JWT-based authentication (naive, but can be modified and scaled to fit your needs)
{'fraction_non_alphanumeric': 0.13844957220637802, 'fraction_numerical': 0.027482499351827845, 'mean_word_length': 4.0365535248041775, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 6, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '582244', 'n_tokens_mistral': 1392, 'n_tokens_neox': 1263, 'n_words': 464}