open-index/open-npm huggingface dataset:
npm package: @petition-blitz/email-verifiers
Description: Unified interface for checking email address deliverability
Author: Jonathon Hill
Latest version: 2.0.7

# @petition-blitz/email-verifiers

Provides a unified interface for checking email address deliverability

## Supported Vendors

* [DataValidation](https://datavalidation.com)
* [NeverBounce](https://neverbounce.com)
* [Mailgun](https://mailgun.com)

## Installation

```
npm install --save @petition-blitz/email-verifiers
```

## Usage

```js
const { detectVerifier, createVerifier } = require('@petition-blitz/email-verifiers');

// auto-detect verifier from environment variables
let verifier = createVerifier(detectVerifier(process.env));

// manually configure a verifier
let verifier = createVerifier('neverbounce', {
  apiKey: '...',
  accept: [
    // list acceptable grades/scores
  ]
});

// run validator
const isValid = await verifier(data.payload); // returns boolean
```

## License

MIT license
npm package: @petitmakerai/auditbot-gateway
Description: AuditBot Gateway - API, CLI, and Agent Runtime for AI-powered audit reports
Latest version: 0.1.16

# @auditbot/gateway

> AI-powered audit report generation with specialized agents

The AuditBot Gateway provides the API server, CLI, and agent runtime for generating professional audit reports using AI agents.

## Installation

```bash
# Global installation (for CLI)
npm install -g @auditbot/gateway

# Or as a project dependency
npm install @auditbot/gateway
```

## Quick Start

```bash
# Run the setup wizard
auditbot setup

# Start the server
auditbot start

# Or start interactive chat
auditbot chat
```

## Features

- **6 Specialized AI Agents** - Data analysis, research, insights, writing, quality control, action planning
- **Multi-LLM Support** - Claude, OpenAI, Ollama (local)
- **Multi-Channel** - Discord, CLI, WebChat API
- **Workflow Engine** - Automated multi-step audit workflows
- **Real-time Updates** - WebSocket streaming

## CLI Commands

```bash
# Setup wizard
auditbot setup

# Start the gateway server
auditbot start

# List agents
auditbot agents list

# Test an agent
auditbot agents test olivia

# Interactive chat
auditbot chat

# Show configuration
auditbot config show
```

## Programmatic Usage

```typescript
import { createServer } from '@auditbot/gateway'

const server = await createServer({
  port: 3000,
  llm: {
    defaultProvider: 'claude',
    providers: {
      claude: { apiKey: process.env.CLAUDE_API_KEY }
    }
  }
})

await server.start()
```

## Configuration

Create `~/.auditbot/config.yaml`:

```yaml
server:
  port: 3000

llm:
  defaultProvider: claude
  providers:
    claude:
      model: claude-sonnet-4-20250514

search:
  provider: perplexity

channels:
  cli:
    enabled: true
  discord:
    enabled: false
```

## Environment Variables

```bash
# LLM Providers
CLAUDE_API_KEY=sk-ant-...
OPENAI_API_KEY=sk-...
OLLAMA_HOST=http://localhost:11434

# Search
PERPLEXITY_API_KEY=pplx-...

# Discord
DISCORD_BOT_TOKEN=...
```

## The 6 Agents

| Agent | Role |
|-------|------|
| **Olivia** 📊 | Data Analyst - Excel/CSV analysis |
| **Victor** 🔬 | Research Director - Research planning |
| **Helena** 🔍 | Insight Hunter - Cross-source analysis |
| **Gabriel** ✍️ | Report Writer - Professional prose |
| **Serge** 🎯 | Quality Critic - Validation & scoring |
| **Nadia** 📋 | Action Planner - Budget & roadmap |

## API Endpoints

| Method | Endpoint | Description |
|--------|----------|-------------|
| GET | `/api/health` | Health check |
| GET | `/api/agents` | List agents |
| POST | `/api/sessions` | Create session |
| POST | `/api/chat` | Send message |
| POST | `/api/workflows/:id/execute` | Start workflow |

## Documentation

Full documentation: [https://github.com/your-org/auditbot](https://github.com/your-org/auditbot)

## License

MIT
npm package: @petitviolet/ts-validator
Description: TypeScript validator
Author: petitviolet
Latest version: 0.1.2

# ts-validator

## Installation

```
$ npm i @petitviolet/ts-validator
```

## Usage

```typescript
type Param = {
  name: string
  email: string
  age: number
}

const result = validate(
  {
    name: 'bob',
    email: 'bob@example.com',
    age: 120,
  },
  {
    name: [
      [name => name.length > 0, 'must not be empty'],
      [name => sleep(1).then(() => !['bob', 'charlie'].includes(name)), 'must be unique'],
    ],
    email: [
      [email => /^.+@.+$/i.test(email), 'must be in email format'],
      [email => sleep(1).then(() => !['bob@example.com', 'charlie@example.com'].includes(email)), 'is already taken'],
    ],
    age: [
      [age => age > 0 && age < 120, 'must be between 0 and 120'],
    ],
  }
)
console.dir(result)
// {
//   valid: false,
//   errors: {
//     name: ['must be unique'],
//     email: ['is already taken'],
//     age: ['must be between 0 and 120'],
//   },
// }
```

See [tests](./test) files for more examples.

## LISENCE

MIT
npm package: @petkit/ngx-highlight
Description: angular highlight component
Author: liuxin
Latest version: 1.0.3

# ngx-highlight
angular highlight component

# Installation
```bash
npm install --save @petkit/ngx-highlight highlight.js
```

# Usage
## Import style

```scss
// Add the following code to global styles.
// if your project is created by angular-cli, you can add the following code to 'style.scss' in src dir.
@import '~highlight.js/styles/default.css';
```

Or add it to `angular.json` file

```json
...
"architect": {
  "build": {
    "options": {
      "styles": {
        "src/styles.css",
        "~highlight.js/styles/default.css"
      }
    }
  }
}
...
```

## Import Module

```ts
import { NgxHighlightModule } from '@petkit/ngx-highlight';

@NgModule({
  imports: [
    ...
    NgxHighlightModule,
  ],
})
```

## Usage

```html
<ngx-highlight [code]="'<h1>code</h1>'" lang="html"></ngx-highlight>
```
npm package: @petkit/ngx-material-cascader
Description: Angular material cascader component
Author: liuxin
Latest version: 1.0.4

# ngx-material-cascader
Angular material cascader component
![example](https://raw.githubusercontent.com/petkit-io/assets/master/ngx-material-cascader.gif)

# Installation

```bash
npm install --save @petkit/ngx-material-cascader
```

# Usage

## Import Module

```ts
import { MatCascaderModule } from '@petkit/ngx-material-cascader';

@NgModule({
  imports: [
    MatCascaderModule,
  ],
}
```

## Simple

```html
<ngx-mat-cascader
  placeholder="Select"
  [data]="data"
  [(value)]="value"
></ngx-mat-cascader>
```

```ts
import { Component, OnInit } from '@angular/core';

@Component({
  selector: 'ngx-mat-cascader-simple',
  templateUrl: './mat-cascader-simple.component.html',
  styleUrls: ['./mat-cascader-simple.component.scss']
})
export class MatCascaderSimpleComponent implements OnInit {
  data = [{
    value: 1,
    text: 'one',
    children: [{
      value: 11,
      text: 'one one',
    }, {
      value: 12,
      text: 'one two'
    }]
  }, {
    value: 2,
    text: 'two',
  }];
  value: number[] = [];

  constructor() { }

  ngOnInit() {
  }
}
```

# License
MIT
npm package: @petkit/ngx-material-demo
Description: angular material demo component
Author: liuxin
Latest version: 1.0.4

# Angualr Material Demo Component
[demo](https://stackblitz.com/edit/sora-angular-material-demo)

![example](https://raw.githubusercontent.com/petkit-io/assets/master/ngx-material-demo.gif)

# Installation

```bash
npm install --save-dev @petkit/ngx-material-demo
```

This package depend on [@petkit/ngx-highlight](https://github.com/petkit-io/ngx-highlight) to highlight code.

# Usage
## Import Module

```ts
import {
  MatDemoModule,
} from '@petkit/ngx-material-demo';
@NgModule({
  imports: [
    MatDemoModule.forRoot({
      // http request base url(Notice: It's a absolute url)
      baseUrl: '/assets/demo'
    })
  ],
})
```

## HTML

```html
<ngx-mat-demo path="button" title="Button">
  <button mat-button>Button</button>
</ngx-mat-demo>
```

The value of `path` will be translated to
- `/assets/demo/button.component.html`
- `/assets/demo/button.component.ts`
- `/assets/demo/button.component.scss`

You can assign value to `suffixes`, but `.component` will always add to all suffixes.

```ts
MatDemoModule.forRoot({
  baseUrl: '/assets/demo',
  suffixes: ['html', 'ts', 'css']
})
```

# License
MIT
npm package: @petkit/ngx-material-panel-select
Description: Angular material panel select component
Author: liuxin
Latest version: 2.0.3

# ngx-material-panel-select
Angular material panel select component

![example](https://raw.githubusercontent.com/petkit-io/assets/master/ngx-material-panel-select.gif)

# Installation

```bash
npm install --save @petkit/ngx-material-panel-select
```

# Usage

## Import Module

```ts
import {
  MatPanelSelectModule,
} from '@petkit/ngx-material-panel-select';

@NgModule({
  imports: [
    MatPanelSelectModule,
  ],
}
```

## Simple

```html
<button mat-raised-button color="primary" [matMenuTriggerFor]="panelSelect.menu">panel select</button>

<ngx-mat-panel-select #panelSelect [data]="data"></ngx-mat-panel-select>
```

```ts
import {
  Component,
  OnInit,
} from '@angular/core';
import {
  IMatPanelSelectData,
} from '@petkit/ngx-material-panel-select';
import Mock from 'mockjs';

@Component({
  selector: 'ngx-mat-panel-select-simple',
  templateUrl: './mat-panel-select-simple.component.html',
  styleUrls: ['./mat-panel-select-simple.component.scss'],
})
export class MatPanelSelectSimpleComponent implements OnInit {
  data: IMatPanelSelectData[] = Mock.mock({
    'data|2-5': [{
      title: '@ctitle(2, 3)',
      'children|10-30': [{
        text: '@cword(2, 7)'
      }]
    }]
  }).data;

  constructor(
  ) { }

  ngOnInit() {
  }
}
```

# License
MIT
npm package: @petkit/ngx-table-descartes
Description: Angular descartes table component
Author: liuxin
Latest version: 1.0.4

# ngx-table-descartes
Angular descartes table component

![example](https://raw.githubusercontent.com/petkit-io/assets/master/ngx-table-descartes.png)

# Installation

```bash
npm install --save @petkit/ngx-table-descartes
```

# Usage

## Import Module

```ts
import {
  TableDescartesModule,
} from '@petkit/ngx-table-descartes';

@NgModule({
  imports: [
    TableDescartesModule,
  ],
}
```

## Simple

```html
<ngx-table-descartes [data]="data"></ngx-table-descartes>
```

```ts
import { Component, OnInit } from '@angular/core';
// mock data
import Mock from 'mockjs';

@Component({
  selector: 'ngx-table-descartes-simple',
  templateUrl: './table-descartes-simple.component.html',
  styleUrls: ['./table-descartes-simple.component.scss']
})
export class TableDescartesSimpleComponent implements OnInit {
  data: {[key: string]: string}[] = Mock.mock({
    'data|10-20': [{
      'type|1': ['typeA', 'typeB', 'typeC'],
      'size|1': ['big', 'middle', 'small'],
      'name': '@name()',
    }]
  }).data;

  constructor() { }

  ngOnInit() {
  }

}
```

# License
MIT
npm package: @petkit/spec
Description: petkit project specification
Author: liuxin
Latest version: 2.0.2

# Petkit specification project
# Installation
```bash
yarn add --dev @petkit/spec
```

# Usage
## Angular
### `./tsconfig.json`
```bash
cp ./node_modules/@petkit/spec/rc/ng-usage/tsconfig.json tsconfig.json
```

### `./tslint.json`
```bash
cp ./node_modules/@petkit/spec/rc/ng-usage/tslint.json tslint.json
```

### `./htmlhintrc`
```bash
cp ./node_modules/@petkit/spec/rc/ng/.htmlhintrc .htmlhintrc
```

### `./stylelintrc`
```bash
cp ./node_modules/@petkit/spec/rc/ng-usage/.stylelintrc .stylelintrc
```

## JS
### `./.eslintrc`
```bash
yarn add --dev eslint babel-eslint
# normal
cp ./node_modules/@petkit/spec/rc/js/.eslintrc .eslintrc
# react
yarn add --dev eslint-config-react-app@2.1.0
cp ./node_modules/@petkit/spec/rc/js/.eslintrc-react .eslintrc
```
npm package: @petkoneo/phaser3-rex-plugins
Description: Plugins of phaser3
Author: Rex
Latest version: 1.0.1

# Notes of Phaser3 engine

## Links

### Phaser3

- [FAQ](https://github.com/phaser-discord/community/blob/master/FAQ.md)
- [Official discord channel](https://discord.gg/phaser)
- [API document](https://photonstorm.github.io/phaser3-docs/)
- [Examples](https://labs.phaser.io/)
- [Bug report](https://github.com/photonstorm/phaser/issues)

### Rex plugins

- [Plugin list](https://rexrainbow.github.io/phaser3-rex-notes/docs/site/plugin-list/)
    - [Demos](https://codepen.io/rexrainbow/pens/public)
- [Discord channel](https://discord.gg/kWkuFZK)
- [Bug report](https://github.com/rexrainbow/phaser3-rex-notes/issues)
- [Feature suggestion & discussion](https://github.com/rexrainbow/phaser3-rex-notes/discussions)

## Demo

### Prepare

1. Install [node.js](https://nodejs.org/en/) (ver 10+, for rollup)
2. Click `install.bat`
    - `npm install`

### Run examples

1. Click `*.bat` in folder `examples`, it will open application on browser

### Export minify file of plugins

1. Click `export-plugins.bat`
    - `npm run build`

## File structure

- Folder `dist` : Plugin minify files
- Folder `plugins`, `templates` : Source code of plugins and templates
- Folder `examples` : Test code of plugins
- Folder `docs` : Some notes of phaser3, and my plugins.
    - `site\index.html` : Entry point.