open-index/open-npm huggingface dataset:
npm package: @heady-ai/shared
Description: Shared utilities, configuration, cryptography, embedding, and logging modules for the Heady™ AI Platform.
Author: HeadySystems Inc.
Latest version: 4.0.0

# @heady-ai/shared

Shared utilities, configuration, cryptography, embedding, and logging modules for the Heady™ AI Platform.

## Modules

| Module | Description |
|--------|-------------|
| `config.mjs` | Centralized configuration with environment validation |
| `crypto.mjs` | AES-256-GCM encryption/decryption for secrets |
| `embedding.mjs` | Text embedding provider abstraction |
| `logger.mjs` | Structured logging with Pino |
| `index.mjs` | Re-exports all modules |

## Usage

```js
import { config, encrypt, decrypt, getEmbedding, logger } from '@heady-ai/shared';

// Config
const dbUrl = config.get('DATABASE_URL');

// Crypto
const encrypted = await encrypt('my-secret', key);
const decrypted = await decrypt(encrypted, key);

// Embedding
const vector = await getEmbedding('Hello world');

// Logger
logger.info({ event: 'boot' }, 'Service started');
```

## License

UNLICENSED — © 2026 Heady™Systems Inc.
npm package: @healerlab/vue3-facebook-login
Description: Powerful, lightweight Facebook login component for Vue 3
Author: HealerNguyen
Latest version: 0.1.7

# Vue 3 facebook login

[![npm](https://img.shields.io/npm/v/@healerlab/vue3-facebook-login?style=flat-square)](https://www.npmjs.com/package/@healerlab/vue3-facebook-login)
[![npm](https://img.shields.io/npm/dw/@healerlab/vue3-facebook-login?style=flat-square)](https://www.npmjs.com/package/@healerlab/vue3-facebook-login)
[![GitHub](https://img.shields.io/github/license/healerlab/vue3-facebook-login?style=flat-square)](https://github.com/healerlab/vue3-facebook-login/blob/main/LICENSE)

## Demo
[Demo and docs](https://healerlab.github.io/vue3-facebook-login)

## Installation

### Prerequisites

- [Node.js](https://nodejs.org/) version 16 or higher.
- Text Editor.
  - [VSCode](https://code.visualstudio.com/) is recommended, along with the [official Vue extension](https://marketplace.visualstudio.com/items?itemName=Vue.volar).

To get started, you can install `vue3-facebook-login` with:

```bash
npm i @healerlab/vue3-facebook-login
```

with pnpm:

```bash
pnpm add @healerlab/vue3-facebook-login
```

with yarn:

```bash
yarn add @healerlab/vue3-facebook-login
```



## Usage
See the [FaceBook Graph API](https://developers.facebook.com/tools/explorer) for more information about scope.

Import the component and register it locally in your Vue component:

```vue
<script setup>
import { HFaceBookLogin } from '@healerlab/vue3-facebook-login';

const onSuccess = (response) => {
  // get your auth token and info
}

const onFailure = () => {
  // logic if auth failed
}
</script>
```

Use the component in your template:

```vue
<HFaceBookLogin 
  v-slot="fbLogin" 
  app-id="391069538168549" 
  @onSuccess="onSuccess" 
  @onFailure="onFailure"
  scope="email,public_profile"
  fields="id,name,email,first_name,last_name,birthday"
>
  <span @click="fbLogin.initFBLogin" class="fb-button">Login with facebook</span>
</HFaceBookLogin>
```

This is style for this example and not required, you can change and customize it to match your use-case:
```scss
.fb-button {
  display: inline-block;
  margin: 10px 0 10 0;
  color: white;
  background-color: #1967d2;
  border-radius: 8px;
  padding: 16px;
  cursor: pointer;
}
```

See the [Vue3 FaceBook Login](https://healerlab.github.io/vue3-facebook-login) page for more information.
npm package: @healerlab/vue3-simple-otp-input
Description: Powerful, lightweight, and reusable OTP input component for Vue 3
Author: HealerNguyen
Latest version: 0.0.9

# Vue 3 simple OTP input

[![npm](https://img.shields.io/npm/v/@healerlab/vue3-simple-otp-input?style=flat-square)](https://www.npmjs.com/package/@healerlab/vue3-simple-otp-input)
[![npm](https://img.shields.io/npm/dw/@healerlab/vue3-simple-otp-input?style=flat-square)](https://www.npmjs.com/package/@healerlab/vue3-simple-otp-input)
[![GitHub](https://img.shields.io/github/license/healerlab/vue3-simple-otp-input?style=flat-square)](https://github.com/healerlab/vue3-simple-otp-input/blob/main/LICENSE)

## Demo
[Demo and docs](https://healerlab.github.io/vue3-simple-otp-input)

## Installation

### Prerequisites

- [Node.js](https://nodejs.org/) version 16 or higher.
- Text Editor.
  - [VSCode](https://code.visualstudio.com/) is recommended, along with the [official Vue extension](https://marketplace.visualstudio.com/items?itemName=Vue.volar).

To get started, you can install `vue3-simple-otp-input` with:

```bash
npm i @healerlab/vue3-simple-otp-input
```

with pnpm:

```bash
pnpm add @healerlab/vue3-simple-otp-input
```

with yarn:

```bash
yarn add @healerlab/vue3-simple-otp-input
```



## Usage
Import the component and register it locally in your Vue component:

```vue
<script setup lang="ts">
import { HOtpInput } from "@healerlab/vue3-simple-otp-input";

const handleFinish = (otpCode: string) => {
  // write logic with received code
}

const handleChange = (otpCode: string) => {
  // write logic with changed code
}

const getCodeWithSeparator = () => {
  // get code with separator
  // otpInput?.value?.genResultWithSeparator()
}
</script>
```

Use the component in your template:

```vue
<HOtpInput
  :length="6" 
  type="text" 
  @on-finish="handleFinish"
  @on-change="handleChange" 
  wrapperClassName="otp-input"
  :outlined="true"
  ref="otpInput"
  :only-number="true"
  separator="-" // separator support
  separatorType="middle" // middle or all
/>
```

This is minimal style for your input, you can change it to match your use-case:


```scss
<style scoped lang="scss">
.otp-input {
  :deep(input) {
    outline: none;
    width: 30px;
    padding: 12px;
    font-size: 22px;
    border: none;
    margin-left: 10px;
    text-align: center;
    &:first-child {
      margin-left: 0;
    }
    &:focus {
      outline: none
    }
  }

  :deep(span) {
    padding: 0 0px 0 10px;
    font-size: 30px;
  }
}
</style>
```

See the [Vue3 Simple OTP Input](https://healerlab.github.io/vue3-simple-otp-input) page for more information.
npm package: @healgaren/pixi-viewport-es5
Description: A highly configurable viewport/2D camera designed to work with pixi.js. Features include dragging, pinch-to-zoom, mouse wheel zooming, decelerated dragging, follow target, snap to point, snap to zoom, clamping, bouncing on edges, and move on mouse edges.
Author: David Figatner
Latest version: 4.34.5-beta.1
npm package: @health-net-global/medex-click-to-call
Description: Webcomponent medex-click-to-call following open-wc recommendations
Author: medex-click-to-call
Latest version: 1.0.4

# \<medex-click-to-call>

This webcomponent follows the [open-wc](https://github.com/open-wc/open-wc) recommendation.

## Installation

```bash
npm i medex-click-to-call
```

## Usage

```html
<script type="module">
  import 'medex-click-to-call/medex-click-to-call.js';
</script>

<medex-click-to-call></medex-click-to-call>
```



## Tooling configs

For most of the tools, the configuration is in the `package.json` to reduce the amount of files in your project.

If you customize the configuration a lot, you can consider moving them to individual files.

## Local Demo with `web-dev-server`

```bash
npm start
```

To run a local development server that serves the basic demo located in `demo/index.html`
npm package: @healthadvisor/excalidraw
Description: Excalidraw as a React component
Latest version: 0.18.5

# Excalidraw

**Excalidraw** is exported as a component to directly embed in your projects.

## Installation

You can use `npm`

```bash
npm install react react-dom @excalidraw/excalidraw
```

or via `yarn`

```bash
yarn add react react-dom @excalidraw/excalidraw
```

After installation you will see a folder `excalidraw-assets` and `excalidraw-assets-dev` in `dist` directory which contains the assets needed for this app in prod and dev mode respectively.

Move the folder `excalidraw-assets` and `excalidraw-assets-dev` to the path where your assets are served.

By default it will try to load the files from [`https://unpkg.com/@excalidraw/excalidraw/dist/`](https://unpkg.com/@excalidraw/excalidraw/dist)

If you want to load assets from a different path you can set a variable `window.EXCALIDRAW_ASSET_PATH` depending on environment (for example if you have different URL's for dev and prod) to the url from where you want to load the assets.

#### Note

**If you don't want to wait for the next stable release and try out the unreleased changes you can use `@excalidraw/excalidraw@next`.**

## Dimensions of Excalidraw

Excalidraw takes _100%_ of `width` and `height` of the containing block so make sure the container in which you render Excalidraw has non zero dimensions.

### Demo

[Try here](https://codesandbox.io/s/excalidraw-ehlz3).

## Integration

Head over to the [docs](https://docs.excalidraw.com/docs/@excalidraw/excalidraw/integration)

## API

Head over to the [docs](https://docs.excalidraw.com/docs/@excalidraw/excalidraw/api)

## Contributing

Head over to the [docs](https://docs.excalidraw.com/docs/@excalidraw/excalidraw/contributing)
npm package: @healthadvisor/react-big-calendar
Description: Calendar! with events
Author: Jason Quense
Latest version: 1.1.6

# react-big-calendar

## How to publish

1. build project: `npm run build`
2. add and commit your changes
3. increase version by:
   `npm version [ major | minor | patch]` (this adds a git tag by own! :D)
4. login to NPM (only for first time): `npm login`
5. publish: `npm publish`

### Base readme:

An events calendar component built for React and made for modern browsers (read: IE10+) and uses flexbox over the classic tables-ception approach.

[**DEMO and Docs**](http://intljusticemission.github.io/react-big-calendar/examples/index.html)

Inspired by [Full Calendar](http://fullcalendar.io/).

## Use and Setup

`npm install react-big-calendar --save`

Include `react-big-calendar/lib/css/react-big-calendar.css` for styles, and make sure your calendar's container
element has a height, or the calendar won't be visible.

## Starters

- [react-big-calendar](https://github.com/arecvlohe/rbc-starter)
- [react-big-calendar with drag and drop](https://github.com/arecvlohe/rbc-with-dnd-starter)

## Run examples locally

```
$ git clone git@github.com:intljusticemission/react-big-calendar.git
$ cd react-big-calendar
$ npm install
$ npm run examples
```

- Open [localhost:3000/examples/index.html](http://localhost:3000/examples/index.html).

### Localization and Date Formatting

`react-big-calendar` includes two options for handling the date formatting and culture localization, depending
on your preference of DateTime libraries. You can use either the [Moment.js](http://momentjs.com/) or [Globalize.js](https://github.com/jquery/globalize) localizers.

Regardless of your choice, you **must** choose a localizer to use this library:

#### Moment.js

```js
import BigCalendar from 'react-big-calendar'
import moment from 'moment'

const localizer = BigCalendar.momentLocalizer(moment)

const MyCalendar = props => (
  <div>
    <BigCalendar
      localizer={localizer}
      events={myEventsList}
      startAccessor="start"
      endAccessor="end"
    />
  </div>
)
```

#### Globalize.js v0.1.1

```js
import BigCalendar from 'react-big-calendar'
import globalize from 'globalize'

const localizer = BigCalendar.globalizeLocalizer(globalize)

const MyCalendar = props => (
  <div>
    <BigCalendar
      localizer={localizer}
      events={myEventsList}
      startAccessor="start"
      endAccessor="end"
    />
  </div>
)
```

## Join us on Reactiflux Discord

Join us on [Reactiflux Discord](https://discord.gg/uJsgpkC) community under the channel #react-big-calendar if you have any questions.
npm package: @healthadvisor/react-dnd-html5-mixed-backend
Description: HTML5 backend for React DnD
Author: Dan Abramov
Latest version: 2.1.0

# React DnD HTML5 Mixed Backend [![npm package](https://img.shields.io/npm/v/react-dnd-html5-mixed-backend.svg?style=flat-square)](https://www.npmjs.org/package/react-dnd-html5-mixed-backend)

This is a fork of the officially supported HTML5 backend for [React
DnD](http://gaearon.github.io/react-dnd/). This fork changes it to not abort drag-and-drop
operations that aren't through React DnD, so that it can be used on pages with other
unrelated drag-and-drop modules.

See [the docs](http://gaearon.github.io/react-dnd/docs-html5-backend.html) for usage information.

This module is used in healthadvisor.

## Installation

```
npm install --save @healthadvisor/react-dnd-html5-mixed-backend
```

There is no `dist` folder on the master branch.

## License

MIT
npm package: @healthcare-interoperability/fhir-query-mongo-store
Description: MongoDB-specific query builder for FHIR resources, built on top of fhir-query-store.
Author: healthcare-interoperability
Latest version: 1.0.0

# @healthcare-interoperability/fhir-query-mongo-store

> MongoDB-specific query builder for FHIR resources, built on top of fhir-query-store.

`@healthcare-interoperability/fhir-query-mongo-store` provides MongoDB-compatible query generation utilities for storing and updating FHIR resources using bulk operations. It extends the generic FHIR query framework provided by [`@healthcare-interoperability/fhir-query-store`](https://www.npmjs.com/package/@healthcare-interoperability/fhir-query-store), enabling support for real-world healthcare integration workflows and storage patterns.

---

## Features

- 🔁 Supports FHIR Bundles (type `collection`, `transaction`, etc.)
- ⚙️ Converts FHIR resources into `bulkWrite`-ready MongoDB update queries
- 🧠 Optimized for idempotent operations using `updateOne` with `upsert`
- 📦 Handles integration IDs and task-based processing
- 🧩 Built for composability and subclassing

---

## Installation

```bash
npm install @healthcare-interoperability/fhir-query-mongo-store
````

---

## Usage

```js
import { FHIRMongoBundleProcessor } from '@healthcare-interoperability/fhir-query-mongo-store';

const bundle = {
  resourceType: 'Bundle',
  type: 'collection',
  entry: [/* array of FHIR resources */]
};

const processor = new FHIRMongoBundleProcessor(bundle)
  .setIntegrationId('your-integration-id');

const queries = processor.query();

// `queries` is an object keyed by resource type, each with an array of MongoDB operations
// e.g. { Patient: [ { updateOne: { filter, update, upsert: true } } ] }
```

---

## API

### `FHIRMongoBundleProcessor`

Processes a FHIR bundle and generates MongoDB-compatible update queries.

#### Constructor

```js
new FHIRMongoBundleProcessor(bundle)
```

* `bundle`: A valid FHIR Bundle or single resource.

#### `.setIntegrationId(integrationId)`

Sets an integration ID to associate with all processed queries.

#### `.query()`

Returns an object where each key is a FHIR resource type (e.g., `"Patient"`) and the value is an array of MongoDB update queries ready for `bulkWrite`.

---

## Related Packages

* [`@healthcare-interoperability/fhir-query-store`](https://www.npmjs.com/package/@healthcare-interoperability/fhir-query-store): Generic FHIR query generation framework used as the base for MongoDB and other data stores.

---

## License

MIT
npm package: @healthcare-interoperability/fhir-query-store
Description: Abstract base for generating queries from FHIR resources that can be used with any data store.
Author: healthcare-interoperability
Latest version: 1.0.0

# @healthcare-interoperability/fhir-query-store

> Lightweight, extensible framework for generating data store–agnostic queries from FHIR resources.

---

## ✨ Features

- 🏥 Supports core FHIR resource types (e.g., `Patient`, `Appointment`, `Encounter`)
- 🔌 Backend-agnostic: works with any storage engine (MongoDB, SQL, memory, etc.)
- ⚙️ Query generation logic encapsulated in a pluggable `FHIRQuery` class
- 🔍 Built-in validation, normalization, and integration ID support
- 🔄 Easily extendable for custom business logic or resource types

---

## 📦 Installation

```bash
npm install @healthcare-interoperability/fhir-query-store
````

---

## 🚀 Usage

```js
import { FHIRQuery } from '@healthcare-interoperability/fhir-query-store';

// Sample FHIR resource
const resource = {
  resourceType: 'Patient',
  id: '123',
  name: [{ family: 'Doe', given: ['John'] }],
};

// Create a FHIRQuery instance
const query = new FHIRQuery(resource);

// Optionally set integration ID
query.setIntegrationId('your-integration-id');

// Generate database-ready query structure
const updates = query.query();

console.log(updates);
/*
[
  {
    resourceType: 'Patient',
    query: {
      updateOne: {
        filter: { id: '123' },
        update: { $set: { ... } },
        upsert: true
      }
    }
  }
]
*/
```

---

## 🧱 Class Overview

### `FHIRQuery`

* `constructor(resource: object)`
* `.setIntegrationId(id: string)`
* `.query() → Array<{ resourceType, query }>`

---

## 🧩 Extending

To add custom logic or support new backends, extend the base class:

```js
class CustomQuery extends FHIRQuery {
  query() {
    const base = super.query();
    // Add custom logic here
    return base;
  }
}
```

---

## 📚 Related Packages

* [`@healthcare-interoperability/fhir-query-store-mongo`](https://npmjs.com/package/@healthcare-interoperability/fhir-query-store-mongo): MongoDB-specific implementation of `FHIRQuery`

---

## 📄 License
MIT