open-index/open-npm huggingface dataset:
npm package: @kyu3638/overlay-manager
Description: tool for managing overlay
Author: Seungkyu Jeon
Latest version: 0.1.5

# Overlay-manager

overlay-manager는 React에서 모달 등 오버레이를 관리하기 위한 라이브러리입니다.

비즈니스 로직과 관계없이, 오직 오버레이를 관리하기 위한 **상태 관리**와 **조건부 렌더링**에서 벗어나기 위해 제작하였습니다.

아래 명령어로 설치할 수 있습니다.

```
npm install @kyu3638/overlay-manager
```

# 예제

## Provider 설정

```tsx
import { OverlayProvider } from "@kyu3638/overlay-manager";

const App = () => {
  return (
    <OverlayProvider>
	  ...
	</OverlayProvider>
  );
}
```

## Overlay 열어보기

```tsx
import { overlay } from "@kyu3638/overlay-manager";

const Home = () => {
  return (
    <Button
      onClick={() =>
        overlay.open(({ isOpen, close }) => {
          return <SampleDialog isOpen={isOpen} close={close} />;
        })
      }
    >
      회원가입
    </Button>
  );
};
```

## Overlay 닫기

```tsx
type SampleDialogProps = {
  isOpen: boolean;
  close: () => void;
};

const SampleDialog = ({ isOpen, close }: SampleDialogProps) => {
  return (
    <Dialog open={isOpen}>
      <DialogContent>
        {/* ... */}
        <Button onClick={close}>닫기</Button>
      </DialogContent>
    </Dialog>
  );
};
```

# overlay-manager이 추구하는 방향

## 1. 선언적 코드

- 명령형 오버레이 관리 방식은 오버레이를 위한 상태관리와 조건부 렌더링을 필요로 합니다.
- 비즈니스 로직 외 코드가 증가하고, 생산성과 개발자 경험을 낮추는 악영향을 주게 됩니다.
- overlay-manager는 직관적이고 선언적인 방식으로 관리할 수 있습니다.

## 2. 중첩된 오버레이 관리

- overlay-manager는 내부적으로 렌더링 되는 오버레이를 배열로 관리하고 있습니다.
- 덕분에 오버레이를 중첩되게 사용하더라도 렌더링 순서를 일관되도록 보장할 수 있습니다.

## 3. 컴포넌트 트리 외부에서 접근 가능하도록 API 구현

- 일반적으로 컴포넌트 내부에서만 오버레이 제어가 가능하지만,
- OverlayProvider 마운트 시 전역 이벤트 리스너와 React 상태를 연결하여 어디서든 overlay.open(…)으로 오버레이를 호출할 수 있습니다.

# 구현 과정 및 트러블 슈팅

## 1. 오버레이 관리에 있어 스택 구조의 한계와 ID 기반 관리로 전환

- 문제상황
    - 구현 초기 `overlay.open(<Dialog />)` 형태의 API로 구현하고, 오버레이를 단순 스택으로 관리하였습니다.
    - 하지만 내부에서 오버레이의 ID를 알 수 없기 때문에 선택적 제어가 불가능하고, Dialog, Toast 등 다양한 오버레이를 사용할 때 반드시 후입선출로 제어되어야 하는 문제가 발생했습니다.
- 해결과정
    - OverlayProvider 내부에서 오버레이 ID를 바인딩한 close 함수를 만들어 prop으로 전달하는 방식으로 API를 재설계하였습니다.
    - 오버레이 상태 관리 구조를 단순 스택에서 Record<id,OverlayItem> + ID 배열 구조로 변경하여 ID 기반 접근과 렌더링 순서를 모두 보장하도록 개선했습니다.
- 성과
    - 각 오버레이가 자신의 ID를 알지 못하더라도 close 함수를 사용하여 독립적인 제어가 가능해졌습니다.
    - Dialog와 Toast 등 다양한 오버레이를 복합적으로 사용하더라도 렌더링 순서에 상관없이 제어가 가능해졌습니다.
    - 개발자는 오버레이의 ID를 고려할 필요없이 개발하여 생산성이 향상될 수 있습니다.

## 2. 이벤트 브릿지 패턴을 이용한 컴포넌트 트리 외부에서 오버레이 제어

- 문제상황
    - React Context는 Provider 하위 컴포넌트에서만 접근 가능하기 때문에, 컴포넌트 트리 외부에서 오버레이를 제어할 수 없는 한계점이 있었습니다.
- 해결과정
    - 전역 싱글톤 이벤트 리스너와 OverlayProvider를 연결하는 브릿지 패턴 구현을 통해 한계점을 해결하고자 했습니다.
    - Provider 마운트 시 `enrollEventListener()`를 통해 오버레이 상태 관리 함수를 전역 리스너에 등록하여, 컴포넌트 트리 외부에서도 overlay API를 호출하면 React가 렌더링 되도록 연결하였습니다.
- 성과
    - 비동기 API 콜백, 외부 라이브러리 등 어디서든 overlay API 활용을 통해 오버레이를 제어할 수 있게 되었습니다.
npm package: @kyuda/apollo
Description: [![Nuxt Apollo](./docs/public/cover.jpg)](https://apollo.nuxtjs.org)
Latest version: 5.0.0-alpha.8

[![Nuxt Apollo](./docs/public/cover.jpg)](https://apollo.nuxtjs.org)

<h1 align="center">Nuxt Apollo</h1>

<p align="center">Effortlessly integrate GraphQL into your Nuxt 3 projects.</p>

<p align="center">
  <!-- <a href="https://github.com/nuxt-community/apollo-module/actions?query=branch%3Amain+event%3Apush">
    <img alt="CI" src="https://github.com/nuxt-community/apollo-module/actions/workflows/ci.yml/badge.svg?branch=main"/>
  </a> -->
  
  <a href="https://npmjs.com/package/@nuxtjs/apollo/v/next">
      <img alt="Version" src="https://img.shields.io/npm/v/@nuxtjs/apollo/next?color=blue&style=flat-square"/>
  </a>
  
  <a href="https://npmjs.com/package/@nuxtjs/apollo/v/next">
      <img alt="Downloads" src="https://img.shields.io/npm/dt/@nuxtjs/apollo/next?color=blue&style=flat-square"/>
  </a>
  
  <a href="https://opensource.org/licenses/MIT">
      <img alt="MIT" src="https://img.shields.io/badge/License-MIT-blue.svg?style=flat-square"/>
  </a>
</p>

❯  [📖 Documentation](https://apollo.nuxtjs.org)

---

**Note:** This branch is for **Nuxt 3** compatible module. Checkout the [`v4` branch](https://github.com/nuxt-modules/apollo/tree/v4) for **Nuxt 2** support. 

---

## Preview

[![Open in StackBlitz](https://developer.stackblitz.com/img/open_in_stackblitz.svg)](https://stackblitz.com/edit/nuxt-apollo-demo)

## Development

- Clone this repository
- Ensure you have the latest LTS version of Node.js installed
- Run `corepack enable`
- Install dependencies using `pnpm install`
- Start playground with `pnpm dev`

## License

[MIT License](./LICENSE)
npm package: @kyuda/node-red-contrib-aws-ses
Description: AWS SES for Node-RED 
Author: ilzenzo
Latest version: 1.0.1

# node-red-contrib-aws-ses

[![Platform](https://img.shields.io/badge/platform-Node--RED-red)](https://nodered.org)
![Release](https://img.shields.io/npm/v/@kyuda/node-red-contrib-aws-ses.svg)
![NPM](https://img.shields.io/npm/dm/@kyuda/node-red-contrib-aws-ses.svg)

This module leverages the [Nodemailer](https://nodemailer.com/about/) and [AWS-SDK](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/SES.html) library to bring AWS SES awesomeness to Node-RED!

## Credits

The package is developed and maintained by [Kyuda](https://www.kyuda.io/).
npm package: @kyuda/node-red-contrib-camunda
Description: Camunda 7 for Node-RED 
Author: ilzenzo
Latest version: 3.0.2

# node-red-contrib-camunda

[![Platform](https://img.shields.io/badge/platform-Node--RED-red)](https://nodered.org)
![Release](https://img.shields.io/npm/v/@kyuda/node-red-contrib-camunda.svg)
![NPM](https://img.shields.io/npm/dm/@kyuda/node-red-contrib-camunda.svg)

This module leverages the [camunda-external-task-client-js](https://github.com/camunda/camunda-external-task-client-js) client library to bring Camunda 7 awesomeness to Node-RED!

## Nodes

### worker / complete

![task-worker and complete node](/packages/node-red-contrib-camunda/docs/worker-complete.png)

Creates an external task worker and subscribes to specific topic. The `worker` node outputs a Node-RED message for each newly received external task task. When a Node-RED message is received at the `complete` nodes's input, that external task gets completed in Camunda (with either success, failure or error).

Please note: These nodes only work in combination. Make sure, the complete object from the worker node output payload gets injected into the input of the complete node.

### create process instance

![workflow-instance node](/packages/node-red-contrib-camunda/docs/workflow-instance.png)

A new process instance gets started in Camunda, when a Node-RED message is received at the input. Once the process instance has been created, the output sends a Node-RED message containing some meta-info, i.e. the processInstanceId.

### correlate message

![publish-message node](/packages/node-red-contrib-camunda/docs/publish-message.png)

This node correlate a message to Camunda, when a Node-RED message is received at the input.

### deploy

![deploy node](/packages/node-red-contrib-camunda/docs/deploy.png)

Inject a bpmn definition definition string to the input of this node to deploy it to Camunda. You can use the 'file in' node from Node-RED to read a bpmn file from disk, or get the process definition from anywhere you want.

### variables helper

![variables-helper node](/packages/node-red-contrib-camunda/docs/variables-helper.png)

To help you build payloads to create process instances or correlate messages, a variable helper is provided.

## Examples

Flow containing examples with all Camunda Nodes.
- worker / complete
- create process instance
- correlate message
- deploy
- variables helper

[flows.json](/packages/node-red-contrib-camunda/docs/flows.json)

![Flow](/packages/node-red-contrib-camunda/docs/example-flow.png)

[process1.bpmn](/packages/node-red-contrib-camunda/docs/process1.bpmn)

![Process](/packages/node-red-contrib-camunda/docs/example-process.png)

## Credits

The package is developed and maintained by [Kyuda](https://www.kyuda.io/).
npm package: @kyuda/node-red-contrib-google
Description: Google for Node-RED 
Author: ilzenzo
Latest version: 1.0.1

# node-red-contrib-google

[![Platform](https://img.shields.io/badge/platform-Node--RED-red)](https://nodered.org)
![Release](https://img.shields.io/npm/v/@kyuda/node-red-contrib-google.svg)
![NPM](https://img.shields.io/npm/dm/@kyuda/node-red-contrib-google.svg)

This module leverages the [google-api-nodejs-client](https://github.com/googleapis/google-api-nodejs-client) client library to bring Google awesomeness to Node-RED!

## Credits

The package is developed and maintained by [Kyuda](https://www.kyuda.io/).
npm package: @kyuda/node-red-contrib-google-cloud
Description: Google Cloud for Node-RED 
Author: ilzenzo
Latest version: 1.0.1

# node-red-contrib-google-cloud

[![Platform](https://img.shields.io/badge/platform-Node--RED-red)](https://nodered.org)
![Release](https://img.shields.io/npm/v/@kyuda/node-red-contrib-google-cloud.svg)
![NPM](https://img.shields.io/npm/dm/@kyuda/node-red-contrib-google-cloud.svg)

This module leverages the [google-cloud-node](https://github.com/googleapis/google-cloud-node) client library to bring Google Cloud awesomeness to Node-RED!

## Credits

The package is developed and maintained by [Kyuda](https://www.kyuda.io/).
npm package: @kyuda/node-red-contrib-graphql
Description: graphql for Node-RED 
Author: ilzenzo
Latest version: 1.0.1

# node-red-contrib-graphql

[![Platform](https://img.shields.io/badge/platform-Node--RED-red)](https://nodered.org)
![Release](https://img.shields.io/npm/v/@kyuda/node-red-contrib-graphql.svg)
![NPM](https://img.shields.io/npm/dm/@kyuda/node-red-contrib-graphql.svg)

This module leverages the [graphql-api-nodejs-client](https://github.com/graphqlapis/graphql-api-nodejs-client) client library to bring graphql awesomeness to Node-RED!

## Credits

The package is developed and maintained by [Kyuda](https://www.kyuda.io/).
npm package: @kyuda/node-red-contrib-kafka
Description: Kafka for Node-RED 
Author: ilzenzo
Latest version: 2.0.5

# node-red-contrib-kafka

[![Platform](https://img.shields.io/badge/platform-Node--RED-red)](https://nodered.org)
![Release](https://img.shields.io/npm/v/@kyuda/node-red-contrib-kafka.svg)
![NPM](https://img.shields.io/npm/dm/@kyuda/node-red-contrib-kafka.svg)

This module leverages the [kafka](https://www.npmjs.com/package/@kafka/node) library to bring Kafka awesomeness to Node-RED!

## Credits

The package is developed and maintained by [Kyuda](https://www.kyuda.io/).
npm package: @kyuda/node-red-contrib-kyuda
Description: Kyuda.io for Node-RED 
Author: ilzenzo
Latest version: 1.1.1

# node-red-contrib-kyuda

[![Platform](https://img.shields.io/badge/platform-Node--RED-red)](https://nodered.org)
![Release](https://img.shields.io/npm/v/@kyuda/node-red-contrib-kyuda.svg)
![NPM](https://img.shields.io/npm/dm/@kyuda/node-red-contrib-kyuda.svg)

This module leverages Kyuda.io to bring Kyuda.io awesomeness to Node-RED!

## Credits

The package is developed and maintained by [Kyuda](https://www.kyuda.io/).
npm package: @kyuda/node-red-contrib-logtail
Description: Logtail for Node-RED 
Author: ilzenzo
Latest version: 2.0.1

# node-red-contrib-logtail

[![Platform](https://img.shields.io/badge/platform-Node--RED-red)](https://nodered.org)
![Release](https://img.shields.io/npm/v/@kyuda/node-red-contrib-logtail.svg)
![NPM](https://img.shields.io/npm/dm/@kyuda/node-red-contrib-logtail.svg)

This module leverages the [logtail](https://www.npmjs.com/package/@logtail/node) library to bring Logtail awesomeness to Node-RED!

## Credits

The package is developed and maintained by [Kyuda](https://www.kyuda.io/).
npm package: @kyuda/node-red-contrib-meteo-swiss
Description: MeteoSwiss for Node-RED 
Author: ilzenzo
Latest version: 1.0.4

# node-red-contrib-meteo-swiss

[![Platform](https://img.shields.io/badge/platform-Node--RED-red)](https://nodered.org)
![Release](https://img.shields.io/npm/v/@kyuda/node-red-contrib-meteo-swiss.svg)
![NPM](https://img.shields.io/npm/dm/@kyuda/node-red-contrib-meteo-swiss.svg)

This module brings MeteoSwiss awesomeness to Node-RED!

## Usage

The *meteo-swiss-station* node can be used to read the data from a [MeteoSwiss meteorological station](https://www.meteoswiss.admin.ch/weather/measurement-values-and-satellite-images/measurement-values-at-meteorological-stations.html).

![Node 1](/packages/node-red-contrib-meteo-swiss/docs/node-1.png)

The list of measured values and information about the individual measuring stations are available on the official [web application](https://www.meteoswiss.admin.ch/services-and-publications/applications/measurement-values-and-measuring-networks.html#param=messnetz-automatisch&table=false).

The *meteo-swiss-forecast* node can be used to read the forecasted data for a given PLZ.

![Node 1](/packages/node-red-contrib-meteo-swiss/docs/node-2.png)

## Credits

The package is developed and maintained by [Kyuda](https://www.kyuda.io/).
npm package: @kyuda/node-red-contrib-minio
Description: Minio for Node-RED 
Author: ilzenzo
Latest version: 1.0.1

# node-red-contrib-minio

[![Platform](https://img.shields.io/badge/platform-Node--RED-red)](https://nodered.org)
![Release](https://img.shields.io/npm/v/@kyuda/node-red-contrib-minio.svg)
![NPM](https://img.shields.io/npm/dm/@kyuda/node-red-contrib-minio.svg)

This module leverages the [minio-js](https://github.com/minio/minio-js) client library to bring Minio awesomeness to Node-RED!

## Credits

The package is developed and maintained by [Kyuda](https://www.kyuda.io/).
npm package: @kyuda/node-red-contrib-papertrail
Description: Papertrail for Node-RED 
Author: ilzenzo
Latest version: 1.0.1

# node-red-contrib-papertrail

[![Platform](https://img.shields.io/badge/platform-Node--RED-red)](https://nodered.org)
![Release](https://img.shields.io/npm/v/@kyuda/node-red-contrib-papertrail.svg)
![NPM](https://img.shields.io/npm/dm/@kyuda/node-red-contrib-papertrail.svg)

This module leverages the [winston](https://github.com/winstonjs/winston) client library to bring Papertrail awesomeness to Node-RED!

## Credits

The package is developed and maintained by [Kyuda](https://www.kyuda.io/).
npm package: @kyuda/node-red-contrib-rabbitmq-bus
Description: RabbitMQ Bus for Node-RED 
Author: ilzenzo
Latest version: 1.0.1

# node-red-contrib-rabbitmq-bus

[![Platform](https://img.shields.io/badge/platform-Node--RED-red)](https://nodered.org)
![Release](https://img.shields.io/npm/v/@kyuda/node-red-contrib-rabbitmq-bus.svg)
![NPM](https://img.shields.io/npm/dm/@kyuda/node-red-contrib-rabbitmq-bus.svg)

This module leverages the [amqplib](https://github.com/squaremo/amqp.node) client library to bring RabbitMQ awesomeness to Node-RED!

## Credits

The package is developed and maintained by [Kyuda](https://www.kyuda.io/).
npm package: @kyuda/node-red-contrib-rika-firenet
Description: RIKA Firenet for Node-RED 
Author: ilzenzo
Latest version: 1.0.3

# node-red-contrib-rika-firenet

[![Platform](https://img.shields.io/badge/platform-Node--RED-red)](https://nodered.org)
![Release](https://img.shields.io/npm/v/@kyuda/node-red-contrib-rika-firenet.svg)
![NPM](https://img.shields.io/npm/dm/@kyuda/node-red-contrib-rika-firenet.svg)

This module brings RIKA Firenet awesomeness to Node-RED! Your stove should be equipped with the [RIKA Firenet module](https://www.rika.ch/de/technology/firenet).

![Firenet](/packages/node-red-contrib-rika-firenet/docs/rika-firenet.svg)

## Usage

The *rika-firenet-read* node can be used to read the staus of a stove from [RIKA Firenet](https://www.rika-firenet.com).

![Node 1](/packages/node-red-contrib-rika-firenet/docs/node-1.png)

## Credits

The package is developed and maintained by [Kyuda](https://www.kyuda.io/).
npm package: @kyuda/node-red-contrib-salesforce
Description: Salesforce for Node-RED 
Author: ilzenzo
Latest version: 2.0.2

# node-red-contrib-salesforce

[![Platform](https://img.shields.io/badge/platform-Node--RED-red)](https://nodered.org)
![Release](https://img.shields.io/npm/v/@kyuda/node-red-contrib-salesforce.svg)
![NPM](https://img.shields.io/npm/dm/@kyuda/node-red-contrib-salesforce.svg)

This module leverages the [jsforce](https://jsforce.github.io/) client library to bring Salesforce awesomeness to Node-RED!

## Credits

The package is developed and maintained by [Kyuda](https://www.kyuda.io/).
npm package: @kyuda/node-red-contrib-sandbox
Description: Sandbox for Node-RED 
Author: ilzenzo
Latest version: 1.0.2

# node-red-contrib-sandbox

[![Platform](https://img.shields.io/badge/platform-Node--RED-red)](https://nodered.org)
![Release](https://img.shields.io/npm/v/@kyuda/node-red-contrib-kyuda.svg)
![NPM](https://img.shields.io/npm/dm/@kyuda/node-red-contrib-kyuda.svg)

This module leverages Kyuda.io to bring Kyuda.io awesomeness to Node-RED!

## Credits

The package is developed and maintained by [Kyuda](https://www.kyuda.io/).
npm package: @kyuda/node-red-contrib-zeebe
Description: Camunda 8 (Zeebe) for Node-RED 
Author: pedesen
Latest version: 1.0.7

# node-red-contrib-zeebe

[![Platform](https://img.shields.io/badge/platform-Node--RED-red)](https://nodered.org)
![Release](https://img.shields.io/npm/v/@kyuda/node-red-contrib-zeebe.svg)
![NPM](https://img.shields.io/npm/dm/@kyuda/node-red-contrib-zeebe.svg)

This module leverages the [zeebe-client-node-js](https://github.com/camunda-community-hub/zeebe-client-node-js) client library to bring Camunda 8 (Zeebe) awesomeness to Node-RED!

## Credits

The package is developed and maintained by [Kyuda](https://www.kyuda.io/).
npm package: @kyuda/types
Description: Kyuda TypeScript types
Author: Kyuda
Latest version: 0.1.6

# `@kyuda/types`

TypeScript types for [Kyuda components](https://kyuda.com/docs/components/api/) (sources and actions).

## Developing 

```bash
npm install
```

Run tests, which use `dtslint`:

```bash
npm run test
```

Build:

```bash
npm run build
```
npm package: @kyudiscord/neo
Description: A discord library for Kyu
Author: Kyu Team
Latest version: 1.0.19
Deprecated: deprecated

# Neo

> A powerful discord library for [Kyu](https://github.com/kyudiscord).

- **[Discord Server](https://discord.gg/FKDZ9DX)**
- **[Github Repository](https://github.com/kyudiscord/neo)**

***Disclaimer:*** Neo is technically a public discord library. 
However, it will not have any kind of support or documentation, you should use [discord.js](https://discord.js.org/) or [eris](https://npmjs.com/eris).
This library isn't entirely my code... most of it comes from **@klasa/core**, and some comes from both _discord.js_ and _eris_.

---

**Related Projects**

- **[@kyudiscord/voice](https://npmjs.com/@kyudiscord/voice)** - A feature-rich lavalink client for neo. 
- **[@kyudiscord/arc](https://npmjs.com/@kyudiscord/arc)** - A sharding library based off [kurasuta](https://npmjs.com/kurasuta) by **[DevYukine](https://github.com/devyukine)**
- **[@kyudiscord/blade](https://npmjs.com/@kyudiscord/blade)** - A discord bot framework.

---

> **neo** is authored by [melike2d](https://melike2d.me). For inquiries contact `2D#5773` on Discord.
npm package: @kyuhakyuk/react-scripts
Description: Configuration and scripts for Create React App.
Latest version: 3.2.1

# react-scripts

This package includes scripts and configuration used by [Create React App](https://github.com/facebook/create-react-app).<br>
Please refer to its documentation:

- [Getting Started](https://facebook.github.io/create-react-app/docs/getting-started) – How to create a new app.
- [User Guide](https://facebook.github.io/create-react-app/) – How to develop apps bootstrapped with Create React App.