<commit_before>## Component Scaffold

This repository is a bare bones scaffolding of the structural layout of a component. The structure is based off of the
Yeoman generator-angular project layout.

### Layout

* app/ - contains a basic AngularJS application for serving up your component's assets live for development  
* test/ - all tests go here  
* component/ - where all the assets of a component lives (directives, styles, and templates)  
* component.json - used for Bower installs and management  
* package.json - used mostly for development purposes with nodejs and npm  <commit_msg>Updating README with build and release instructions.<commit_after>## Alchemy

This is the base component that all Alchemy components will rely on at a minimum.
The functionality provided is a base set of shared directives and common SCSS variables.


### How to Release

For now, the release process for an Alchemy component requires a few manual steps.
First, build a new release version and commit to master.  The build process will: 

* run JSHint
* compile SCSS
* concatenate Javascript
* copy the JS, SCSS, CSS into dist/

To build:

    grunt build
    git status
    git commit -a

Now, we want to push the build directory into a release branch.  If you already have a release branch, clean-it-up with:

    git branch -D release

Create the release branch as a subtree of the dist/ directory:

    git subtree split --prefix dist --branch release

Now checkout the release branch:

    git checkout release

You should see everything that was in the dist/ directory laid out in a flat file structure. 
The last step is to version bump, tag and push out.  In the example below, we are updating the version to 0.0.2.

    vim component.json # adjust the version field => "version": "0.0.2"
    git commit -a -m 'Version bump'
    git tag 0.0.2
    git push alchemy release --force && git push alchemy --tags
{'fraction_non_alphanumeric': 0.05299055613850997, 'fraction_numerical': 0.00472193074501574, 'mean_word_length': 3.518957345971564, 'pattern_counts': {'":': 1, '<': 3, '<?xml version=': 0, '>': 4, 'https://': 0, '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': '1581289', 'n_tokens_mistral': 508, 'n_tokens_neox': 481, 'n_words': 285}