<commit_before># condensation

Package, reuse and share particles for CloudFormation projects

![condensation][condensation-image]

[![NPM][npm-image]][npm-url]
[![Gitter][gitter-image]][gitter-url]
[![Build Status][travis-image]][travis-url]
[![Code Climate][codeclimate-image]][codeclimate-url]
[![Coverage Status][coveralls-image]][coveralls-url]
[![Dependency Status][daviddm-image]][daviddm-url]


## Summary

Condensation provides a framework for building and sharing `particles`
that when packaged together create [AWS CloudFormation](http://aws.amazon.com/cloudformation/)
projects.

Projects are uploaded to S3 and include templates, static assets and/or lambda functions.

Check out all of Condensation's [features](docs/features.md) and see it
in action on [YouTube](https://youtu.be/Vj0dRI9qiMM?list=PLYGffQg665R7PtM0XdPEQuJ0ez5j2G0LW).

## Quick Start

Get started fast with [condensation-docker][condensation-docker-url]

```
$ alias condensation="docker run -e AWS_ACCESS_KEY_ID -e AWS_SECRET_ACCESS_KEY -e AWS_SESSION_TOKEN -v \"$HOME\"/.aws/credentials:/home/condensation/.aws/credentials -v \`pwd\`:/particles --rm -it sungardas/condensation"

$ condensation create project particles-MYPROJECT
$ cd particles-MYPROJECT
$ condensation run build
```

You can also get started with [nodejs](docs/getting-started.md#nodejs)

## Use

[Particles](docs/particle-helpers.md)

[Template Helpers](docs/template-helpers.md)

[AWS Intrinsic Functions](docs/intrinsic-functions.md)

### Project Structure

    particles-my-project
    |
    -- guplfile.js
    |
    -- README.md
    |
    -- CHANGELOG.md
    |
    --particles
      |
      -- assets
      |
      -- conditions
      |
      -- cftemplates
      |
      -- helpers
      |
      -- mappings
      |
      -- metadata
      |
      -- outputs
      |
      -- parameters
      |
      -- resources
      |
      -- sets
      |
      -- partials

Condensation builds templates with Handlebars helpers that
are able to load [particles](docs/particle-helpers.md) from the local project
or from any condensation compatible module added as a npm
dependency.<commit_msg>explain hbs and layout<commit_after># condensation

Package, reuse and share particles for CloudFormation projects

![condensation][condensation-image]

[![NPM][npm-image]][npm-url]
[![Gitter][gitter-image]][gitter-url]
[![Build Status][travis-image]][travis-url]
[![Code Climate][codeclimate-image]][codeclimate-url]
[![Coverage Status][coveralls-image]][coveralls-url]
[![Dependency Status][daviddm-image]][daviddm-url]


## Summary

Condensation provides a framework for building and sharing `particles`
that when packaged together create [AWS CloudFormation](http://aws.amazon.com/cloudformation/)
projects.

Projects are uploaded to S3 and include templates, static assets and/or lambda functions.

Check out all of Condensation's [features](docs/features.md) and see it
in action on [YouTube](https://youtu.be/Vj0dRI9qiMM?list=PLYGffQg665R7PtM0XdPEQuJ0ez5j2G0LW).

## Quick Start

Get started fast with [condensation-docker][condensation-docker-url]

```
$ alias condensation="docker run -e AWS_ACCESS_KEY_ID -e AWS_SECRET_ACCESS_KEY -e AWS_SESSION_TOKEN -v \"$HOME\"/.aws/credentials:/home/condensation/.aws/credentials -v \`pwd\`:/particles --rm -it sungardas/condensation"

$ condensation create project particles-MYPROJECT
$ cd particles-MYPROJECT
$ condensation run build
```

You can also get started with [nodejs](docs/getting-started.md#nodejs)

## Use

[Particles](docs/particle-helpers.md)

[Template Helpers](docs/template-helpers.md)

[AWS Intrinsic Functions](docs/intrinsic-functions.md)

### Project Structure

    particles-my-project
    |
    -- guplfile.js
    |
    -- README.md
    |
    -- CHANGELOG.md
    |
    --particles
      |
      -- assets
      |
      -- conditions
      |
      -- cftemplates
      |
      -- helpers
      |
      -- mappings
      |
      -- metadata
      |
      -- outputs
      |
      -- parameters
      |
      -- resources
      |
      -- sets
      |
      -- partials

Condensation builds templates with Handlebars helpers that
are able to load [particles](docs/particle-helpers.md) from the local project
or from any condensation compatible module added as a npm
dependency.

#### Processing Templates

Condensation will process any template that ends with `.hbs`
```
- particles
|- cftemplates
 |- network.template.json.hbs
```

This allows static templates to be deployed alongside compiled templates

To take full advantage of condensation use a
[layout](template-helpers.md#layout)

{'fraction_non_alphanumeric': 0.1192600652883569, 'fraction_numerical': 0.005223068552774755, 'mean_word_length': 3.436293436293436, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, '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': '6754325', 'n_tokens_mistral': 1524, 'n_tokens_neox': 1434, 'n_words': 347}