open-index/open-npm huggingface dataset:
npm package: @fpjs-incubator/turing
Description: Turing helps to avoid malicious clients by flexible challenges.
Author: FingerprintJS, Inc
Latest version: 0.0.7

# Turing

Turing helps to avoid malicious clients by flexible challenges.

## Register keys

You can generate your keys [there](https://fingerprintjs.com/products/bot-detection/).

## 🔩 [Try Demo](https://turing-demo.fpjs.sh) - see the live demo running in your browser

## Installation

You can get started quickly with [CDN](#CDN), or install Turing with [npm](#npm) and modern build tools.

## CDN

Simply download and include with a script tag. Turing will be registered as a global variable.

To disable [BotD](https://github.com/fingerprintjs/BotD), add `disable-botd` attribute to script load.

### Automatically render the challenge (default)
Opens a modal window with challenge after form submit.

1. Load the Turing API
```html
<script data-sitekey="<your-public-key>" src="https://cdn.jsdelivr.net/npm/@fpjs-incubator/turing/dist/turing.js"></script>
```

### Automatically bind the challenge
Puts challenge frame inside `<div>`.

1. Load the Turing API
```html
<script src="https://cdn.jsdelivr.net/npm/@fpjs-incubator/turing/dist/turing.js"></script>
```

2. Create a `<div>` with `turing-spot` attribute.
```html
<div data-sitekey="<your-public-key>" turing-spot ></div>
```

### Programmatically invoke the challenge

1. Load the Turing API
```html
<script src="https://cdn.jsdelivr.net/npm/@fpjs-incubator/turing/dist/turing.js"></script>
```

2. Call `Turing.execute()` on each action you wish to protect.
```js
Turing.ready(() => {
  Turing.execute().then(async sessionId => {
    // Add your logic to submit to your backend server here.
  })
})
```

3. Send sessionId to your backend with the request to [verify](#verify-response)

## NPM

In order to install the node module, you can use NPM

```js
npm install @fpjs-incubator/turing
```

Or you can install with Yarn:

```js
yarn add @fpjs-incubator/turing
```

## Verify response

POST https://turing.fpapi.io/api/v1/verify
- `session_id` - session id which can be found by `turing-session-id` key form value.
- `secret_key` - your secret key.


```sh
curl --location --request POST 'https://turing.fpapi.io/api/v1/verify' \
    --header 'Content-Type: application/json' \
    --data-raw '{ "session_id": "<session-id>", "secret_key": "<your-secret-key>" }'
```

Response OK

```json
{
    "solved": true
}
```

Response Error

```json
{
    "error": {
        "message": "<error-message>"
    }
}
```
npm package: @fpk/cli
Description: CLI for fpk - functional configuration tool
Author: Tim Smart
Latest version: 0.1.58

# fpk

Functional configuration management.

Use Typescript / Javascript to generate yaml, json, ini (or register your own
format) configuration. Could be used for:

- Generating configuration for Kubernetes
- Generating configuration for databases
- etc.

## Why?

Functional programming and Typescript have some great traits, which are also
really beneficial when writing configuration:

- Composition - you can build your configuration like lego.
- Re-usability - create functions that define entire workloads and reuse them
  across projects.
- Type checking - intellisense FTW.

## Packages

| Name                                                                      | Description                                                     |
| ------------------------------------------------------------------------- | --------------------------------------------------------------- |
| [`@fpk/core`](https://github.com/tim-smart/fpk/tree/master/packages/core) | Package that provides the config generation functionality       |
| [`@fpk/cli`](https://github.com/tim-smart/fpk/tree/master/packages/cli)   | The CLI tool for generating configuration                       |
| [`@fpk/k8s`](https://github.com/tim-smart/fpk/tree/master/packages/k8s)   | Collection of functions for generating Kubernetes configuration |

## Install

```
$ npm install -g @fpk/cli
$ fpk --help
```

## Kubernetes Example Project

See https://github.com/tim-smart/fpk-k8s-example

## Basic Usage

### Create some configuration

`src/my-app.ts`

```typescript
export default {
  "00-one": {
    key: "value",
  },

  "02-two": {
    foo: false,
  },

  "03-three.json": {
    json: true,
  },

  "04-four.ini": {
    ini: "yes",
  },
};
```

## Generate the output

```
$ fpk -d src -o out
MKDIR my-app/
CREATE my-app/00-one.yaml
CREATE my-app/02-two.yaml
CREATE my-app/03-three.json

$ tree out/
out
└── my-app
    ├── 00-one.yaml
    ├── 02-two.yaml
    ├── 03-three.json
    └── 04-four.ini

1 directory, 4 files

$ cat out/my-app/00-one.yaml
key: value
```
npm package: @fpk/k8s
Description: Functional configuration helpers for Kubernetes using @fpk/cli
Author: Tim Smart
Latest version: 0.7.0

# @fpk/k8s

Functional configuration helpers for Kubernetes.

## API Docs

https://tim-smart.github.io/fpk/k8s/

## Example Project

See https://github.com/tim-smart/fpk-k8s-example
npm package: @fplan/bookmarks
Description: ## Setup
Latest version: 2.2.0

# @fplan/bookmarks

## Setup

To save bookmarks, you must provide a storage key.

> Note: The storage key must be unique for each application.

```jsx
import { UI } from "@fplan/ui";

{
    /* ... */
}

<UI bookmarksStorageKey="fplan" />;
```

## API

-   `bookmarkedAtom` - Atom to store the bookmarked items.
-   `bookmarkSearchActionTitleAtom` - Title for the bookmark search action.
npm package: @fplan/dark-mode
Description: ## Query parameters
Latest version: 1.0.3

# @fplan/dark-mode

## Query parameters

| Name     | Type    | Required | Description                            |
| -------- | ------- | -------- | -------------------------------------- |
| darkMode | boolean | Optional | Enables dark mode for the application. |

## Usage

Pass to Layout component:

> darkMode={darkMode}
npm package: @fplan/directions
Description: Package provide the abstract classes and entry point for directions implementation. Set implementation for `directionsResultProviderAtom` and use `directionPointsAtom` as parameters.
Latest version: 1.1.1

# @fplan/directions

Package provide the abstract classes and entry point for directions implementation.
Set implementation for `directionsResultProviderAtom` and use `directionPointsAtom` as parameters.
npm package: @fplan/directions-ui
Description: Package provide the directions UI to interact with user. It allow to set `directionPointsAtom` and display result from `displayRoute` atom. Exact direction search implementation may be any.
Latest version: 1.1.2

# @fplan/directions-ui

Package provide the directions UI to interact with user.
It allow to set `directionPointsAtom` and display result from `displayRoute` atom.
Exact direction search implementation may be any.
npm package: @fplan/geojson-directions-search1
Description: Package provide the function for `searchGeoJSONDirections` and all the code, which allow to search routes in GeoJSON. Code, tests, and no UI.
Latest version: 1.1.1

# @fplan/geojson-directions-search

Package provide the function for `searchGeoJSONDirections` and all the code, which allow to search routes in GeoJSON.
Code, tests, and no UI.
npm package: @fplan/geojson-rules
Description: ```jsx import geojsonRules from "./geojson-rules.json?url";
Latest version: 1.0.0

## Getting Started

```jsx
import geojsonRules from "./geojson-rules.json?url";

<UI
    // ...
    geojsonRules={geojsonRules}
/>;
```

### Create

There is no need for a _create_ rule since a _properties_ object is already required
([source](https://tools.ietf.org/html/rfc7946#section-3.2)).

### Update

The rule updates a _properties_ object.

Example:

-   Adds/updates all objects containing the "id" property with the values of the "update" object.

```json
// geojson-rules.json
{
    "geojsonRules": [
        {
            "filter": ["id"],
            "update": {
                "nav": "pass",
                "foo": "bar"
            }
        }
    ]
}
```

-   Updates all objects containing a "nav: block" property with the value "test"

```json
// geojson-rules.json
{
    "geojsonRules": [
        {
            "filter": ["all", ["get", "nav"], "block"],
            "update": {
                "nav": "test"
            }
        }
    ]
}
```

### Delete

The rule makes a _properties_ object empty.

Example:

```json
// geojson-rules.json
{
    "geojsonRules": [
        // Clears all objects containing a "nav: test".
        {
            "delete": true,
            "filter": ["==", ["get", "nav"], "test"]
        }
    ]
}
```
npm package: @fplan/gtag
Description: ## Query parameters
Latest version: 1.0.4

# @fplan/gtag

## Query parameters

| Name         | Type    | Required | Description                                                                     |
| ------------ | ------- | -------- | ------------------------------------------------------------------------------- |
| allowConsent | boolean | Optional | Enables or disable cookie consent without displaying the cookie consent window. |

## Usage

> _?allowConsent=true_
npm package: @fplan/kiosk-mode
Description: ## Query parameters
Latest version: 1.0.4

# @fplan/kiosk-mode

## Query parameters

| Name            | Type    | Required | Description                                          |
| --------------- | ------- | -------- | ---------------------------------------------------- |
| kiosk           | boolean | Optional | Enables kiosk mode for the application.              |
| kioskPinchHint  | boolean | Optional | Shows the hint (PinchToZoom from @fplan/components). |
| kioskTouchHint  | boolean | Optional | Shows the hint (TouchHand from @fplan/components).   |
| kioskHintClosed | boolean | Optional | Helps not to show the hint again.                    |

## Usage

Only kiosk mode:

> _?kiosk=true_

Kiosk mode with hint:

> _?kiosk=true&kioskPinchHint=true_

After closing the hint:

> _?kiosk=true&kioskPinchHint=true&kioskHintClosed=true_
npm package: @fplan/menu
Description: 1. Install the package using `pnpm add @fplan/menu` 2. These atoms can be filled with the following contents:     - `menuBannerAtom` - company logo     - `menuContentAtom` - menu items     - `menuTitleAtom` — menu title
Latest version: 1.0.1

# How to use the `@fplan/menu` package

1. Install the package using `pnpm add @fplan/menu`
2. These atoms can be filled with the following contents:
    - `menuBannerAtom` - company logo
    - `menuContentAtom` - menu items
    - `menuTitleAtom` — menu title

### Notes

The `Menu` component from `@fplan/components` is already registered as a layout component in the package `@fplan/search`. This means that the menu is already available in your application if you use the `@fplan/search` package.

The `menuContentAtom` atom has a default value, but it can be changed (replaced or added).

Additionally, you can use the `menuOpenAtom` to open/close the menu, it already works by default.
npm package: @fpoumian/number-formatter
Description: A small library that adds commas to numbers.
Author: Fernando Poumian
Latest version: 0.0.2

Number Formatter
=========

A small library that adds commas to numbers

[![Build Status](https://travis-ci.org/fpoumian/number-formatter.svg?branch=master)](https://travis-ci.org/fpoumian/number-formatter)

[![Coverage Status](https://coveralls.io/repos/github/fpoumian/number-formatter/badge.svg?branch=master)](https://coveralls.io/github/fpoumian/number-formatter?branch=master)

## Installation

  `npm install @fpoumian/number-formatter`

## Usage

    var numFormatter = require('@fpoumian/number-formatter');

    var formattedNum = numFormatter(35666);
  
  
  Output should be `35,666`


## Tests

  `npm test`

## Contributing

In lieu of a formal style guide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code.