open-index/open-npm huggingface dataset:
npm package: @pedi/chika-types
Description: Shared TypeScript types and Zod schemas for Pedi Chika chat service
Latest version: 1.0.10

# @pedi/chika-types

Shared TypeScript types and Zod validation schemas for the Pedi Chika chat system.

## What It Does

Provides the single source of truth for all data structures in the chat system. Every message, participant, channel event, and API request/response is defined here and shared across both the server and the SDK.

## Problems It Solves

- **Type drift between client and server** — A single package defines the contract, so the SDK and server can never disagree on the shape of a message or participant
- **Runtime validation** — Zod schemas validate incoming data at API boundaries while TypeScript generics enforce correctness at compile time
- **Domain flexibility** — The generic `ChatDomain` system lets you reuse the entire type system for different chat contexts (ride-hailing, customer support, etc.) with full type safety

## Key Features

- Generic `ChatDomain` interface for defining strongly-typed chat domains
- Pre-built `PediChat` domain for ride-hailing (driver/rider roles, booking events, vehicle metadata)
- Zod schemas for all API request validation (participants, messages, history queries)
- Full TypeScript generics — `Message<PediChat>`, `Participant<PediChat>`, etc.
- Zero dependencies beyond Zod

## Quick Start

```typescript
import type { Message, Participant, PediChat } from '@pedi/chika-types';
import { sendMessageRequestSchema } from '@pedi/chika-types';

// Strongly typed for ride-hailing
const msg: Message<PediChat> = { /* autocomplete guides you */ };

// Runtime validation at API boundaries
const parsed = sendMessageRequestSchema.parse(requestBody);
```

## Documentation

See the [docs](./docs/) for detailed documentation:

- [Type Reference](./docs/type-reference.md) — All types, interfaces, and schemas
- [Chat Domain Guide](./docs/chat-domain-guide.md) — How the generic domain system works, with examples
npm package: @pedidopago/eslint-react
Description: With NPM
Latest version: 1.0.0

### Get Started

With NPM

```bash
npm install @pedidopago/eslint-react
```

With Yarn

```bash
yarn add @pedidopago/eslint-react
```

### Usage

Add the following to your `.eslintrc.js` file:

```js
module.exports = {
  extends: ["@pedidopago/eslint-react"],
};
```
npm package: @pedidopago/pp2
Description: Pedido Pago 2 JS API
Author: pedidopago
Latest version: 0.1.3

# pp2

> Pedido Pago 2 JS API

[![NPM](https://img.shields.io/npm/v/@pedidopago/pp2.svg)](https://www.npmjs.com/package/@pedidopago/pp2) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)

## Install

```bash
npm install --save @pedidopago/pp2
```

## Usage (JS lib)

```js
import pp from '@pedidopago/pp2'

async function example() {
const result = await pp.store.getInfo();
  console.log(result.store_id);
}
example();
```

## Usage (component)

```jsx
import React, { Component } from 'react'

import MyComponent from '@pedidopago/pp2'
import 'pp2/dist/index.css'

class Example extends Component {
  render() {
    return <MyComponent />
  }
}
```

To get started, in one tab, run:
```$ cd pp2 && npm start```

And in another tab, run the create-react-app dev server:
```$ cd pp2/example && npm start```

Then go to `localhost:3000`


## License

MIT © [pedidopago](https://github.com/pedidopago)
npm package: @pedidopago/redis-reliable-queue
Description: Reliable queue pattern using Redis as a backend
Author: Gabriel Ochsenhofer
Latest version: 2.1.1

# redis-reliable-queue
<a href="https://github.com/pedidopago/redis-reliable-queue-go">![go](https://img.shields.io/badge/go-1.18-blue)</a>
<a href="https://github.com/pedidopago/redis-reliable-queue-js">![node-ts](https://img.shields.io/badge/node-14%2B-yellow)</a>

A Node.js module that implements a reliable queue that uses Redis for the backend.
It uses the RPOPLPUSH pattern:
https://redis.io/commands/rpoplpush#pattern-reliable-queue

References:
https://blog.tuleap.org/how-we-replaced-rabbitmq-redis

## Installation 
```sh
# with npm:
npm install @pedidopago/redis-reliable-queue --save

# with yarn:
yarn add @pedidopago/redis-reliable-queue
```

## Usage
```typescript
import { ReliableQueue, Listener, Message } from '@pedidopago/redis-reliable-queue';
// import { ClientOpts } from 'redis';
// ...
type MyMessagePayload interface {
    order_id : string;
}
// create a queue with exis
const rq = ReliableQueue.newWithRedisOpts<MyMessagePayload>("queuename", 6379,"redis-host.pedidopago.com.br");
// send a message:
await rq.pushMessage("topic", {order_id: "FFABE9"});
// listen for messages:
const listener = await rq.listen("worker-id");
// the worker ID is used to retrieve messages if the service crashes while reading messages.

// to wait until a message is received:
const [message, finalizemsg] = await listener.waitForMessage();
// the message is of type Message<MyMessagePayload> in this case
console.log(message.topic); // string -> "topic"
console.log(message.content); // MyMessagePayload {order_id: "FFABE9"}
await finalizemsg(); // you must run this after you did something with msg successfully
// failing to run "finalizemsg" will persist the message, so it will be received
// again once you instantiate rq.listen("id") after a restart
```

## Test

Setup the ".env" (optional):
```sh
#.env
REDIS_HOST=192.168.X.Y
REDIS_PORT=6379
TEST_QUEUE=sometestqueue
```

Run:
```sh
npm run test
```
npm package: @pedidopago/ui
Description: Quick build beautiful Pedido Pago apps
Author: Pedido Pago
Latest version: 1.17.72

<h1 align="center">
  <img src="https://user-images.githubusercontent.com/75874462/145101826-9244932f-7072-4727-9124-8c26620ad786.png" alt="Logo"/>
  <br/>
</h1>

<div align="center">
  <img src="https://img.shields.io/badge/React-v17.0.2-1DD195?style=for-the-badge&logo=react&link=http://google.com" />
  <img src="https://img.shields.io/badge/Emotion-v11.3.0-1DD195?style=for-the-badge&logo=styled-components" />
  <img src="https://img.shields.io/badge/Storybook-v6.3.7-1DD195?style=for-the-badge&logo=storybook" />
  <img src="https://img.shields.io/badge/React Testing Library-v11.1.0-1DD195?style=for-the-badge&logo=testinglibrary" />
  <img src="https://img.shields.io/badge/FrameMotion-v4.1.17-1DD195?style=for-the-badge&logo=framer" />
  <img src="https://img.shields.io/badge/Typescript-v4.3.5-1DD195?style=for-the-badge&logo=typescript" />
</div>

<p align="center">
  <a href="#iniciar-">Iniciar&nbsp;</a> | &nbsp;
  <a href="#estrutura-de-codigo-">Estrutura de codigo&nbsp;</a> | &nbsp;
  <a href="#roadmap-">Roadmap&nbsp;</a> | &nbsp;
  <a href="#contribuir-">Contribuir&nbsp;</a> 
</p>

## Iniciar 🚀
  
  ### Requisitos:
  - [Nodejs](https://github.com/nodejs/node)
  - [Yarn](https://github.com/yarnpkg/yarn)

  ### Instalação:

  1. Clone o Repositorio
  
  ``` bash
  git clone git@github.com:pedidopago/pedidopago-ui.git 
  ```

  2. Instalar as dependencias:
  
  ```bash 
  yarn
  ```

  ### Executar o projeto localmente:
  
  Iniciar o projeto com o storybook:
  
  ```bash 
  yarn storybook
  ```

  Para executar os testes use o script: 
  
  ```bash
  yarn test
  ```

  > Para mais detalhes dos scripts considere consultar o package.json na raiz do projeto.

  #### 📌 Ira precisar tambem das variaveis de ambiente `CHROMATIC_PROJECT_TOKEN` e `SKIP_PREFLIGHT_CHECK`.


## Estrutura de codigo



> Ao entrar no projeto sempre entre em `packages/pedidopago-ui` para trabalhar/executar os scripts

## Roadmap 🌐

- [ ] Mudar a estrutura de pastas

- [ ] Sessão de novos componentes

- [ ] Atualização de pacotes

- [ ] Incrementação dos testes

- [ ] Melhorias na documentação

- [ ] Adicionar license

## Contribuir 💡

1. Crie uma branch apartir da **`dev`** com o prefixo **`lib`-[número da issue]-[nome da issue]**.
exemplo:
```bash
 git checkout -b lib-99-buttom
```
2. Desenvolver

3. Criar a pull request
 - Número da issue no inicio da pr.
 - Descritivo com pontos importantes do que foi feito.
 - Print dos tests no terminal e video de apresentação que pode ser feito via [loom](https://www.loom.com/).
npm package: @pedidopago/ui-tiny
Description: Tiny version of Pedido Pago UI
Author: Pedido Pago
Latest version: 1.2.9

<h1 align="center">
  <img src="https://user-images.githubusercontent.com/75874462/145101826-9244932f-7072-4727-9124-8c26620ad786.png" alt="Logo"/>
  <br/>
</h1>

<div align="center">
  <img src="https://img.shields.io/badge/React-v17.0.2-1DD195?style=for-the-badge&logo=react&link=http://google.com" />
  <img src="https://img.shields.io/badge/Emotion-v11.3.0-1DD195?style=for-the-badge&logo=styled-components" />
  <img src="https://img.shields.io/badge/Storybook-v6.3.7-1DD195?style=for-the-badge&logo=storybook" />
  <img src="https://img.shields.io/badge/React Testing Library-v11.1.0-1DD195?style=for-the-badge&logo=testinglibrary" />
  <img src="https://img.shields.io/badge/FrameMotion-v4.1.17-1DD195?style=for-the-badge&logo=framer" />
  <img src="https://img.shields.io/badge/Typescript-v4.3.5-1DD195?style=for-the-badge&logo=typescript" />
</div>

<p align="center">
  <a href="#iniciar-">Iniciar&nbsp;</a> | &nbsp;
  <a href="#estrutura-de-codigo-">Estrutura de codigo&nbsp;</a> | &nbsp;
  <a href="#roadmap-">Roadmap&nbsp;</a> | &nbsp;
  <a href="#contribuir-">Contribuir&nbsp;</a> 
</p>

## Iniciar 🚀
  
  ### Requisitos:
  - [Nodejs](https://github.com/nodejs/node)
  - [Yarn](https://github.com/yarnpkg/yarn)

  ### Instalação:

  1. Clone o Repositorio
  
  ``` bash
  git clone git@github.com:pedidopago/pedidopago-ui.git 
  ```

  2. Instalar as dependencias:
  
  ```bash 
  yarn
  ```

  ### Executar o projeto localmente:
  
  Iniciar o projeto com o storybook:
  
  ```bash 
  yarn storybook
  ```

  Para executar os testes use o script: 
  
  ```bash
  yarn test
  ```

  > Para mais detalhes dos scripts considere consultar o package.json na raiz do projeto.

  #### 📌 Ira precisar tambem das variaveis de ambiente `CHROMATIC_PROJECT_TOKEN` e `SKIP_PREFLIGHT_CHECK`.


## Estrutura de codigo



> Ao entrar no projeto sempre entre em `packages/pedidopago-ui` para trabalhar/executar os scripts

## Roadmap 🌐

- [ ] Mudar a estrutura de pastas

- [ ] Sessão de novos componentes

- [ ] Atualização de pacotes

- [ ] Incrementação dos testes

- [ ] Melhorias na documentação

- [ ] Adicionar license

## Contribuir 💡

1. Crie uma branch apartir da **`dev`** com o prefixo **`lib`-[número da issue]-[nome da issue]**.
exemplo:
```bash
 git checkout -b lib-99-buttom
```
2. Desenvolver

3. Criar a pull request
 - Número da issue no inicio da pr.
 - Descritivo com pontos importantes do que foi feito.
 - Print dos tests no terminal e video de apresentação que pode ser feito via [loom](https://www.loom.com/).
npm package: @pedidopago/wabaman-contrib
Description: Helper libraries for WABAMan Ts/Js clients
Author: Pedido Pago Internet LTDA
Latest version: 1.1.1

# WABAMan Contrib JS

A Node.js module that implements a helper libraries and functions to use with WABAMan.

## Installation 
```sh
# with npm:
npm install @pedidopago/wabaman-contrib --save

# with yarn:
yarn add @pedidopago/wabaman-contrib
```
npm package: @pedidos10/react-native-power-manager
Description: ## Getting started
Author: Lucas Hang
Latest version: 1.0.2


# react-native-power-manager

## Getting started

`$ npm install react-native-power-manager --save`

### Mostly automatic installation

`$ react-native link react-native-power-manager`

### Manual installation


#### iOS

1. In XCode, in the project navigator, right click `Libraries` ➜ `Add Files to [your project's name]`
2. Go to `node_modules` ➜ `react-native-power-manager` and add `RNPowerManager.xcodeproj`
3. In XCode, in the project navigator, select your project. Add `libRNPowerManager.a` to your project's `Build Phases` ➜ `Link Binary With Libraries`
4. Run your project (`Cmd+R`)<

#### Android

1. Open up `android/app/src/main/java/[...]/MainActivity.java`
  - Add `import com.reactlibrary.RNPowerManagerPackage;` to the imports at the top of the file
  - Add `new RNPowerManagerPackage()` to the list returned by the `getPackages()` method
2. Append the following lines to `android/settings.gradle`:
  	```
  	include ':react-native-power-manager'
  	project(':react-native-power-manager').projectDir = new File(rootProject.projectDir, 	'../node_modules/react-native-power-manager/android')
  	```
3. Insert the following lines inside the dependencies block in `android/app/build.gradle`:
  	```
      compile project(':react-native-power-manager')
  	```


## Usage
```javascript
import RNPowerManager from 'react-native-power-manager';

// TODO: What to do with the module?
RNPowerManager;
```
npm package: @pedidos10/tscpaths
Description: Replace absolute paths to relative paths after typescript compilation
Author: Joon Ho Cho
Latest version: 0.0.2

# tscpaths
Replace absolute paths to relative paths after typescript compilation (tsc) during compile-time.

[![npm version](https://badge.fury.io/js/tscpaths.svg)](https://badge.fury.io/js/tscpaths)
[![Dependency Status](https://david-dm.org/joonhocho/tscpaths.svg)](https://david-dm.org/joonhocho/tscpaths)
[![License](http://img.shields.io/:license-mit-blue.svg)](http://doge.mit-license.org)

## Comparison to [tsconfig-paths](https://github.com/dividab/tsconfig-paths)
\+ Compile time (no runtime dependencies)

## Getting Started
First, install tscpaths as devDependency using npm or yarn.

```sh
npm install --save-dev tscpaths
# or
yarn add -D tscpaths
```

## Add it to your build scripts in package.json
```json
"scripts": {
  "build": "tsc --project tsconfig.json && tscpaths -p tsconfig.json -s ./src -o ./out",
}
```

### Options
| flag         | description                                        |
| ------------ | -------------------------------------------------- |
| -p --project | project configuration file (tsconfig.json)         |
| -s --src     | source code root directory                         |
| -o --out     | output directory of transpiled code (tsc --outDir) |

You need to provide -s (--src) and -o (--out), because it's hard to predict source and output paths based on tsconfig.json.

I've tried a little and failed. :(

`tsc` does some magic to determine source and output paths and I haven't dived too deep to mimic it.

For now, it's simpler to provide the paths manually.

If you know how, Pull Requests are welcome!


# Disclaimer !!!!!
This is not a mature project yet.

It works for my setup so far.

It may not work correctly if your setup is too complicated, so please do some testing before pushing it to production!!!
npm package: @pedily/extension-scripts
Description: Utility that helps creating Extensions for the Cognigy.AI platform
Author: Robin Kranich
Latest version: 0.0.4

# Extension Scripts

This package contains scripts that aim to make the development of extensions easier.

## Installation

Install the package as a "development dependency" using `npm`

```shell
npm i -D @pedily/extension-scripts
```

## Usage

You can automate the generation of the "extension file" `.tar.gz` file by calling `extension-scripts bundle` in your npm scripts like this:

```package.json
{
    "scripts": {
        "bundle": "extension-scripts package"
    }
}
```

This will create a file called `{{PACKAGE_NAME}}.tar.gz` in your project folder, where `{{PACKAGE_NAME}}` is equal to the `name` field in your `package.json`.
Contents of the extension file (todo-list for implementation):

- [x] your extension source code
  - [ ] auto-detects TypeScript outputs by checking `outDir` in `tsconfig.json`
  - [x] falls back to the `main` file's directory in `package.json`
- [x] your `package.json`
  - [ ] it will nag about missing properties and add sane defaults if some are missing
- [x] an `icon.png`
  - [x] will add your `icon.png` from the project folder
  - [x] will fall back to adding a dummy `icon.png` in case you don't provide one
  - [ ] will fall back to adding a dummy `icon.png` in case the one you provided is invalid
- [x] a `README.md`
  - [x] will add your `README.md` from the project folder
  - [x] will fall back to adding a dummy `README.md` in case you don't provide one
npm package: @pedily/use-local-storage
Description: A react hook like setState that helps persisting and syncing values across tabs in realtime.
Latest version: 1.0.1

# @pedily/use-local-storage

A react hook like `setState` that helps persisting and syncing values across tabs in realtime.

## Prerequisites

This hook is meant to be used with react in a browser environment.

## Table of contents

- [@pedily/use-local-storage](#@pedily/use-local-storage)
  - [Prerequisites](#prerequisites)
  - [Table of contents](#table-of-contents)
  - [Getting Started](#getting-started)
  - [Installation](#installation)
  - [Usage](#usage)
  - [Versioning](#versioning)
  - [License](#license)

## Getting Started

These instructions will give basic instructions on how this package is used. More context-based help can be accessed by using a TypeScript-compatible editor (the package ships with typings).

## Installation

To install the library, run:

```sh
$ npm install @pedily/use-local-storage
```

Or if you prefer using Yarn:

```sh
$ yarn add @pedily/use-local-storage
```

## Usage

You can use `useLocalStorage` similar like you would use `useState`.

```typescript
import { useLocalStorage } from "@pedily/use-local-storage";

const ControlledInputExample = () => {
  const [name, setName] = useLocalStorage("name", "John Doe");

  const handleNameChange = (e) => setName(e.target.value);

  return <input value={name} onChange={handleChange} />;
};
```

The first argument is the key which will be used to store the value in the localStorage.

The second argument is the "initial value" that should be used in case the value is not yet set.

The return value is an array containing the current value and a setter function.

In case the localStorage key was already set, the value from the localStorage will be preferred over the initial value.

If the localStorage key was not set yet, it will be immediately set to the "initial value".

```typescript
const CallbackSetterExample = () => {
  const [count, setCount] = useLocalStorage("count", 0);

  const increment = () => setCount((count) => count + 1);

  return <button onClick={increment}>clicked {count} times</button>;
};
```

The `setter` function also supports a callback as an argument which will be called with the current value like `useState`.

The value can be set to any value that is serializable as `JSON`.

Becaues `JSON.stringify` and `JSON.parse` is used under the hood, you cannot rely on object references when accessing the same key with multiple hooks or from different tabs.

When using the hook in multiple tabs, changing a value in one tab will also change the value from that key in the other tab.

## Versioning

[SemVer](http://semver.org/) is used for versioning. For the versions available, see the [tags on this repository](https://github.com/pedily/use-local-storage/tags).

## License

MIT
npm package: @pedro-l9/functional-snake
Description: A snake game engine written in a functional-ish way
Author: Pedro Lacerda
Latest version: 0.13.2

# @pedro-l9/functional-snake

[![npm (scoped)](https://img.shields.io/npm/v/@pedro-l9/functional-snake)](https://www.npmjs.com/package/@pedro-l9/functional-snake)
[![Codecov Coverage](https://img.shields.io/codecov/c/github/pedro-l9/functional-snake/master.svg?style=flat-square)](https://codecov.io/gh/pedro-l9/functional-snake/)
[![npm bundle size (scoped)](https://img.shields.io/bundlephobia/min/@pedro-l9/functional-snake)](https://github.com/pedro-l9/functional-snake)
npm package: @pedro-mass/test-create-react-library
Description: Testing create-react-library for package development
Author: pedro-mass
Latest version: 1.0.1

# test-create-react-library

> Testing create-react-library for package development

[![NPM](https://img.shields.io/npm/v/test-create-react-library.svg)](https://www.npmjs.com/package/test-create-react-library) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)

## Install

```bash
npm install --save test-create-react-library
```

## Usage

```jsx
import React, { Component } from 'react'

import MyComponent from 'test-create-react-library'

class Example extends Component {
  render () {
    return (
      <MyComponent />
    )
  }
}
```

## License

MIT © [pedro-mass](https://github.com/pedro-mass)