open-index/open-npm huggingface dataset:
npm package: @studiowebux/auth
Description: ## Configurations
Author: Studio Webux
Latest version: 6.0.0-alpha

# Webux Authentication and Authorization with Keycloak

## Configurations

```js
const config = {
  session: {
    express_session_secret: process.env.EXPRESS_SESSION_SECRET,
    resave: false,
    save_uninitialized: true,
    cookie: { secure: NODE_ENV === 'production' ? true : false },
  },
  redis: {
    url: process.env.REDIS_URL,
    prefix: process.env.REDIS_PREFIX,
  },
  keycloak: {
    keycloak_issuer: process.env.KEYCLOAK_ISSUER,
    keycloak_client_id: process.env.KEYCLOAK_CLIENT_ID,
    keycloak_client_secret: process.env.KEYCLOAK_CLIENT_SECRET,
    keycloak_redirect_uris: process.env.KEYCLOAK_REDIRECT_URIS,
    keycloak_logout_redirect_uris: process.env.KEYCLOAK_LOGOUT_REDIRECT_URIS,
    keycloak_response_types: process.env.KEYCLOAK_RESPONSE_TYPES,
    keycloak_response_mode: process.env.KEYCLOAK_RESPONSE_MODE,
  },
};
```
npm package: @studiowebux/crawler
Description: Crawler for the Engine
Author: Studio Webux
Latest version: 6.0.0-alpha

# Crawler

```bash
npm install --save @studiowebux/crawler
```

## Features

- Open browser, page and navigate to url
- Collect HAR Data
- Collect media resources (Audio, Video, Images)
- Take Screenshot (Fullscreen or not)
- Extract HTML Elements
- Extract named Metadata
- Generate identifier (Using page title and url)
- Extract html (`document.*`) and extract innerHtml (`body.innerHtml`)

## Usage

See [Example](./tests/index.js)

```bash
node __tests__/index.js
```
npm package: @studiowebux/search
Description: Search plugin
Author: Studio Webux
Latest version: 6.0.0-alpha

# Search Plugin

```bash
npm install --save @studiowebux/search
```

## Environment variables

```text
ZINC_ENDPOINT="http://YOUR_IP:4080"
ZINC_AUTHENTICATION="user:password"
```

## Usage

```javascript
const { searchDocument, formatZincResponse } = require("../src/index");

// ...

app.search("/:term", async (req, res) => {
  const response = await searchDocument(
    "webuxlab",
    process.env.ZINC_ENDPOINT,
    process.env.ZINC_AUTHENTICATION,
    "webuxlab.com"
  );

  return res.json(formatZincResponse(response));
});

// ...
```

See `tests/` for examples.