<commit_before><h2>Navigation Controller Design</h2>

## What's Going On Here?

Navigation Controllers are a new design for handling what is commonly referred to as the "offline problem" for web applications. Navigation Controllers aren't a new version of the [rightfully-loathed](http://alistapart.com/article/application-cache-is-a-douchebag) [HTML5 Application Cache](http://www.whatwg.org/specs/web-apps/current-work/multipage/offline.html). Instead, they provide a new set of scriptable primtives that make it possible for application developers to build URL-friendly, offline-by-default applications in a sane and layered way.

To understand the design and how you might build apps with Navigation Controllers, see the [explainer document](https://github.com/slightlyoff/NavigationController/blob/master/explainer.md)

For the nitty-gritty of the API, see [`controller.ts`](https://github.com/slightlyoff/NavigationController/blob/master/controller.ts), a [TypeScript](http://www.typescriptlang.org/) description of the major bits of the callable interface.

## Building & Contributing

Most decisions regarding the API and finer points of the design are handled through issues in this repository. Feel free to open one if you don't see an obvious answer to your question in the explainer.<commit_msg>Remove language about offline. It's not pertinent and largely distracts from the purpose of the design.<commit_after><h2>Navigation Controller Design</h2>

## What's Going On Here?

Navigation Controllers are a new system in browsers that provide scriptable caches and the ability to respond to network requests from certain web pages via script, responding either the contents of these caches or programmatically-generated content.

Controllers aren't a new version of the [rightfully-loathed](http://alistapart.com/article/application-cache-is-a-douchebag) [HTML5 Application Cache](http://www.whatwg.org/specs/web-apps/current-work/multipage/offline.html). Instead, they are comprised of scriptable primtives that make it possible for application developers to build URL-friendly, always-available applications in a sane and layered way.

To understand the design and how you might build apps with Navigation Controllers, see the [explainer document](https://github.com/slightlyoff/NavigationController/blob/master/explainer.md)

For the nitty-gritty of the API, see [`controller.ts`](https://github.com/slightlyoff/NavigationController/blob/master/controller.ts), a [TypeScript](http://www.typescriptlang.org/) description of the major bits of the callable interface.

## Building & Contributing

Most decisions regarding the API and finer points of the design are handled through issues in this repository. Feel free to open one if you don't see an obvious answer to your question in the explainer.
{'fraction_non_alphanumeric': 0.07686832740213523, 'fraction_numerical': 0.002135231316725979, 'mean_word_length': 5.35972850678733, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 4, 'lorem ipsum': 0, 'www.': 4, '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': '5639183', 'n_tokens_mistral': 723, 'n_tokens_neox': 702, 'n_words': 307}