<commit_before># elegant-async-code

Example code for my "Elegant async code with ES2015 Promises" talk

## Introduction

This is an *extremely* fake email client app, written in React (with JSX), to demonstrate elegant async code with ES2015
Promises, a talk I'm giving at MK.js on 23 Feb 2016.

## Usage

From a clean checkout, get the app into your browser in one line:

```bash
npm install && npm start
```

At this point, if you want to start tinkering, open another terminal and type:

```bash
npm install -g gulp-cli
gulp watch
```

## Browser support

At time of writing, this is only going to work in Firefox, Chrome and Opera, since it uses both `Promise` and `fetch()` natively.<commit_msg>Adding further reading links to README<commit_after># elegant-async-code

Example code for my "Elegant async code with ES2015 Promises" talk

## Introduction

This is an *extremely* fake email client app, written in React (with JSX), to demonstrate elegant async code with ES2015
Promises, a talk I'm giving at MK.js on 23 Feb 2016.

## Usage

From a clean checkout, get the app into your browser in one line:

```bash
npm install && npm start
```

At this point, if you want to start tinkering, open another terminal and type:

```bash
npm install -g gulp-cli
gulp watch
```

## Browser support

At time of writing, this is only going to work in Firefox, Chrome and Opera, since it uses both `Promise` and `fetch()` natively.

## Further reading

If the talk piqued your interest, try these:

- [Promises/A+](https://promisesaplus.com/) - open standard for Promises behaviour
- [States and Fates](https://github.com/domenic/promises-unwrapping/blob/master/docs/states-and-fates.md) - reference of Promise-related terminology
- [Embracing Promises in JavaScript](http://javascriptplayground.com/blog/2015/02/promises) - post by <NAME>, gave me the idea for this talk
- [es6-promise](https://github.com/stefanpenner/es6-promise) - polyfill for using Promises in older browsers
- [That's so fetch!](https://jakearchibald.com/2015/thats-so-fetch/) - post by <NAME> going into depth about `fetch()`
{'fraction_non_alphanumeric': 0.0964200477326969, 'fraction_numerical': 0.01909307875894988, 'mean_word_length': 4.360613810741688, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 4, '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': '4565116', 'n_tokens_mistral': 682, 'n_tokens_neox': 610, 'n_words': 280}