<commit_before># [EVRYTHNG](https://www.evrythng.com) Client Javascript SDK

**evrythng.js** is a Javascript library that facilitates the interaction with the EVRYTHNG REST API thanks to its 
fluent API. It helps EVRYTHNG Application developers to build client apps faster and easier.

**evrythng.js** can be used both in Web applications (Browser) and embedded/server applications using Node.js. The
difference being the transport layer - Browser's XHR vs Node's HTTP.

> **evrythng.js** is intended to be used with EVRYTHNG [Applications](https://developers.evrythng.com/reference#applications-1)
and corresponding [Application Users](https://developers.evrythng.com/reference#application-users-1) or with 
[Devices](https://developers.evrythng.com/reference#section-thngs-as-devices). 
Be sure to only include your EVRYTHNG **Application API key** and **not** your Operator, User or Device key in any 
public source code (read more about [Scope Permissions](https://developers.evrythng.com/docs/scope-api-and-permissions)).

> See [Related Tools](#related-tools) below for other usages.

## Installation

### Browser

##### With [Bower](http://bower.io/)

    bower install evrythng --save
    
The Bower package is [AMD](http://requirejs.org/docs/whyamd.html)-compatible. This means you can load 
it asynchronously using tools like [Require.js](http://requirejs.org/) or simply dropping the script tag 
into your HTML page:

    <script src="bower_components/evrythng/dist/evrythng.js"></script>

See [Usage](#usage) below for more details.

##### Load from CDN

Add the script tag into your HTML page:

    <script src="//cdn.evrythng.net/toolkit/evrythng-js-sdk/evrythng-4.2.0.min.js"></script>
 
Or always get the last release:

    <script src="//cdn.evrythng.net/toolkit/evrythng-js-sdk/evrythng.js"></script>
    <script src="//cdn.evrythng.net/toolkit/evrythng-js-sdk/evrythng.min.js"></script>
    
For HTTPS you need to use:

    <script src="//d10ka0m22z5ju5.cloudfront.net/toolkit/evrythng-js-sdk/evrythng-4.2.0.min.js"></script>
    <script src="//d10ka0m22z5ju5.cloudfront.net/toolkit/evrythng-js-sdk/evrythng.js"></script>
    <script src="//d10ka0m22z5ju5.cloudfront.net/toolkit/evrythng-js-sdk/evrythng.min.js"></script>
    
### Node.js

    npm install evrythng --save

## Usage

For advanced usage and options, see [Documentation](#documentation) below.

#### RequireJS (AMD)

```javascript
requirejs.config({
  paths: {
    evrythng: '../bower_components/evrythng/dist/evrythng'
  }
});
    
require(['evrythng'], function (EVT) {

  var app = new EVT.App(APP_API_KEY);<commit_msg>Adding disclaimer about the not-versioned version<commit_after># [EVRYTHNG](https://www.evrythng.com) Client Javascript SDK

**evrythng.js** is a Javascript library that facilitates the interaction with the EVRYTHNG REST API thanks to its 
fluent API. It helps EVRYTHNG Application developers to build client apps faster and easier.

**evrythng.js** can be used both in Web applications (Browser) and embedded/server applications using Node.js. The
difference being the transport layer - Browser's XHR vs Node's HTTP.

> **evrythng.js** is intended to be used with EVRYTHNG [Applications](https://developers.evrythng.com/reference#applications-1)
and corresponding [Application Users](https://developers.evrythng.com/reference#application-users-1) or with 
[Devices](https://developers.evrythng.com/reference#section-thngs-as-devices). 
Be sure to only include your EVRYTHNG **Application API key** and **not** your Operator, User or Device key in any 
public source code (read more about [Scope Permissions](https://developers.evrythng.com/docs/scope-api-and-permissions)).

> See [Related Tools](#related-tools) below for other usages.

## Installation

### Browser

##### With [Bower](http://bower.io/)

    bower install evrythng --save
    
The Bower package is [AMD](http://requirejs.org/docs/whyamd.html)-compatible. This means you can load 
it asynchronously using tools like [Require.js](http://requirejs.org/) or simply dropping the script tag 
into your HTML page:

    <script src="bower_components/evrythng/dist/evrythng.js"></script>

See [Usage](#usage) below for more details.

##### Load from CDN

Add the script tag into your HTML page:

    <script src="//cdn.evrythng.net/toolkit/evrythng-js-sdk/evrythng-4.2.0.min.js"></script>
 
Or always get the last release (warning, new releases might break your code!):

    <script src="//cdn.evrythng.net/toolkit/evrythng-js-sdk/evrythng.js"></script>
    <script src="//cdn.evrythng.net/toolkit/evrythng-js-sdk/evrythng.min.js"></script>
    
For HTTPS you need to use:

    <script src="//d10ka0m22z5ju5.cloudfront.net/toolkit/evrythng-js-sdk/evrythng-4.2.0.min.js"></script>
    <script src="//d10ka0m22z5ju5.cloudfront.net/toolkit/evrythng-js-sdk/evrythng.js"></script>
    <script src="//d10ka0m22z5ju5.cloudfront.net/toolkit/evrythng-js-sdk/evrythng.min.js"></script>
    
### Node.js

    npm install evrythng --save

## Usage

For advanced usage and options, see [Documentation](#documentation) below.

#### RequireJS (AMD)

```javascript
requirejs.config({
  paths: {
    evrythng: '../bower_components/evrythng/dist/evrythng'
  }
});
    
require(['evrythng'], function (EVT) {

  var app = new EVT.App(APP_API_KEY);
{'fraction_non_alphanumeric': 0.13659550349518232, 'fraction_numerical': 0.010957868883430947, 'mean_word_length': 4.3582995951417, 'pattern_counts': {'":': 0, '<': 31, '<?xml version=': 0, '>': 35, 'https://': 10, 'lorem ipsum': 0, 'www.': 2, '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': '5945446', 'n_tokens_mistral': 1880, 'n_tokens_neox': 1776, 'n_words': 445}