open-index/open-npm huggingface dataset:
npm package: @nyteshade/ne-pubsub
Description: Simple but easy to use publisher/subscriber class
Author: Brielle Harrison
Latest version: 2.1.2

PubSub Project
==============

Overview
--------

The PubSub project implements a simple yet powerful Publish/Subscribe pattern in JavaScript, enabling efficient and decoupled communication between different parts of your application. It's designed to be lightweight, easy to use, and flexible enough to cover a wide range of use cases.

Features
--------

*   **Event Management**: Efficiently manage event subscriptions and publications.
*   **Customizable Event Tracking**: Option to track event publications.
*   **Extended Logging and Error Handling**: Specialized PubSub instances for logging (`Logs`) and error handling (`Errors`).
*   **ES6 Module Support**: Written as ES6 modules, making it modern and tree-shakable.
*   **Test Suite**: Includes a comprehensive Jest test suite.

Installation
------------

To install the PubSub library, use npm or yarn:

```sh
npm install @nyteshade/ne-pubsub
```

or

```sh
yarn add @nyteshade/ne-pubsub
```

Usage
-----

Here's a quick example to get you started:



```js
import { PubSub } from '@nyteshade/ne-pubsub';

// Create a PubSub instance
const myPubSub = new PubSub('MyPubSub', ['event1', 'event2']);

// Subscribe to an event
myPubSub.listen('event1', (data) => console.log(`Received: ${data}`));

// Publish an event
myPubSub.publish('event1', 'Hello World!');
```

API Reference
-------------

### `PubSub` Class

*   `constructor(name, eventNames, [options])`: Initializes a new instance of PubSub.
*   `addEvent(eventName, ...subscribers)`: Adds a new event to track.
*   `listen(eventName, subscriber, [thisObj], [options])`: Subscribes to an event.
*   `unlisten(eventName, subscriber)`: Unsubscribes from an event.
*   `publish(eventName, ...args)`: Publishes an event to all subscribers.

### Specialized Instances

*   `Logs`: For logging purposes.
*   `Errors`: For error handling.

Testing
-------

To run the test suite, use the following command:

```sh
npm test
```

Contributing
------------

Contributions are always welcome! Please follow these steps to contribute:

1.  **Fork the Repository**: Create your own fork of the project.
2.  **Create a Feature Branch**: Make your changes in a new branch.
3.  **Run Tests**: Ensure that all tests pass with your changes.
4.  **Submit a Pull Request**: Open a PR with a clear list of what you've done.

### Reporting Issues

If you find any bugs or have a feature request, please file an issue in the GitHub issue tracker.

License
-------

This project is licensed under [MIT License](LICENSE).
npm package: @nyteshade/ne-reflection
Description: A set of utilities for reflection in JavaScript, part of the Nyteshade Enterprises suite
Author: Brielle Harrison
Latest version: 2.2.0

# @nyteshade/ne-reflection

## Overview

This class provides tools for working with descriptors and proxies. In general when working with `Object.defineProperty/-ies` you need to get very familiar with object descriptors. These define how the property is bound to the object in question. Descriptors are responsible for, and the reason we can, have things like computed getters and setters and how transpilers make code like this work in ES5

```js
const obj = { name: 'Brielle', get age() { return 'none of your business' } }
```

To do this in ES5 you'd need to work with descriptors and see what happens

```js
const obj = { name: 'Brielle' }
Object.defineProperty(obj, 'age', {
  enumerable: true,
  configurable: true,
  get: function() { return 'none of your business' }
})
```
npm package: @nythyatdora/helloworld
Description: learn how to write open source library
Author: Thyatdora Ny
Latest version: 1.2.1

### Hello, World! 🌎
#### ✨ Features
- Say `Hello, World!` as your first method
- Super easy to use
- Plain simple javascript syntax
- Genuinely fast as it should be
- All 100% production already!

#### 🤩 Upcoming Features
- [ ] First class support for ES6 module
- [ ] Interesting hello methods
- [ ] Support external *RestAPI* for helloRandomName()
- [ ] Smaller bundle size
- [ ] Import via CDN
- [ ] Run as executable via command-line interface

### Reference
- [How to Write an Open Source Javascript Library](https://egghead.io/courses/how-to-write-an-open-source-javascript-library)
npm package: @nytramr/mr-template
Description: Javascript implementation of GoLang templates package
Author: Martin Rubinsztein
Latest version: 0.0.1

# Mr Template

A GoLang-like template engine implementation for the front end, inspired by Go's `html/template` package.

[![NPM version](https://img.shields.io/npm/v/@nytramr/mr-template.svg)](https://www.npmjs.com/package/@nytramr/mr-template)
[![MIT License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)

---

## Features

- Familiar Go template syntax (`{{ ... }}`) for JavaScript/TypeScript projects
- Supports template inheritance, blocks, conditionals, loops, and custom functions
- Safe HTML escaping and URL encoding helpers
- Extensible with user-defined functions
- Runs in browsers and Node.js

---

## Installation

```sh
npm install @nytramr/mr-template
```

## Usage

```javascript
import { Template } from '@nytramr/mr-template';

const tpl = new Template('example');
tpl.parse('Hello, {{.name}}!');

const output = tpl.execute({ name: 'World' });
console.log(output); // Hello, World!
```

### Custom Functions

```javascript
const tpl = new Template('example', {
  shout: (str) => String(str).toUpperCase() + '!',
});
tpl.parse('Say: {{shout .word}}');
console.log(tpl.execute({ word: 'hello' })); // Say: HELLO!
```

## Documentation

With some exceptions, the API is well documented in the GoLang [text/template documentation page](https://pkg.go.dev/text/template).

### API Differences

The differences in the API are mostly due to the specifics of the programming language and environment:

- Some Go-specific features (such as pipelines with channels, or certain built-in functions) may not be available.
- Custom functions are provided as a map/object at template creation.
- Data context is always a plain JavaScript object.

## Playground

Try Mr Template live in your browser!

Clone the repo and run:

```sh
npm install
npm run build
npm run start
```

Then open https://localhost:5500/playground in your browser.

## Development

See [docs/development.md](./docs/development.md) for instructions on contributing, running tests, and setting up SSL for the playground.

## License

MIT © Martin Rubinsztein
npm package: @nyuta/estat-mcp
Description: MCP server for e-Stat API integration - Access Japanese government statistical data
Author: nyuta01
Latest version: 0.1.10

# e-Stat MCP Server

An MCP (Model Context Protocol) server that provides integration with Japan's e-Stat API, enabling AI tools to access Japanese government statistical data.

## Installation

```bash
npm install @nyuta/estat-mcp
```

## Setup

1. Get your e-Stat API key from https://www.e-stat.go.jp/api/
2. Set environment variable:

```bash
export E_STAT_APP_ID=your_api_key_here
```

## Usage

### As MCP Server
```bash
npx @nyuta/estat-mcp
```

### Development
```bash
# Build
pnpm run build

# Run
pnpm start

# Development mode
pnpm run dev
```

## Available Tools

The server provides 5 tools for e-Stat API access:

### 1. search_e_stat_tables
Search statistics tables by keyword.

**Parameters:**
- `search_word` (required): Search keyword (supports AND/OR/NOT)
- `surveyYears`: Target period (yyyy, yyyymm, or range)
- `statsField`: Statistical field code (e.g., '02' for population)
- `limit`: Number of results (default: 10)

### 2. get_e_stat_meta_info
Get metadata for a statistics table.

**Parameters:**
- `stats_data_id` (required): Statistics table ID
- `explanationGetFlg`: Include explanations ('Y'/'N')

### 3. get_specific_e_stat_data
Get actual statistical data.

**Parameters:**
- `data_set_id` OR `stats_data_id` (required): Data identifier
- `narrowDownArea`: Geographic area codes
- `limit`: Number of records (default: 10)

### 4. get_e_stat_ref_dataset
Explore dataset structure and filtering options.

**Parameters:**
- `data_set_id` (required): Dataset identifier

### 5. get_e_stat_data_catalog
Browse data catalog and downloadable files.

**Parameters:**
- `search_word`: Search keyword
- `dataType`: File format filter ('XLS', 'CSV', 'PDF')
- `limit`: Number of results (default: 10)

## Testing

```bash
# Test all functionality
pnpm test
```

## Publishing to npm

```bash
# Version bump
pnpm version patch  # or minor/major

# Build and publish
pnpm run prepublishOnly
pnpm run publish:npm
```

## Requirements

- Node.js >= 18.0.0
- e-Stat API key (free registration required)

## License

MIT