open-index/open-npm huggingface dataset:
npm package: @pubware/git
Description: git plugin
Author: William Grosset
Latest version: 1.0.0-alpha.1

# 📁 git

The `git` plugin is responsible for committing and pushing changes to a remote repository.

## Props

| Prop          | Type    | Description                                   |
| ------------- | ------- | --------------------------------------------- |
| commitVersion | boolean | Indicates if the version should be committed. |
| remote        | string  | Name of the remote repository.                |
| defaults      | object  | Defaults.                                     |

## License

MIT
npm package: @pubware/npm
Description: npm plugin
Author: William Grosset
Latest version: 1.0.0-alpha.1

# 📦 npm

The `npm` plugin is responsible for bumping the package version and publishing to a registry.

## Props

| Prop         | Type    | Description                               |
| ------------ | ------- | ----------------------------------------- |
| tagCommit    | boolean | Indicates if the commit should be tagged. |
| preReleaseId | string  | Identifier for the pre-release version.   |
| buildCmd     | string  | Command to build the project.             |
| versionArgs  | string  | Arguments for versioning.                 |
| publishArgs  | string  | Arguments for publishing.                 |
| defaults     | object  | Defaults.                                 |

## License

MIT
npm package: @pubwiki/sandbox-llm-client
Description: WikiRAG client library for sandbox environments - provides AI game engine capabilities
Author: PubWiki Team
Latest version: 0.1.2

# @pubwiki/sandbox-llm-client

WikiRAG client library for sandbox environments. This library provides a convenient interface for user game code to interact with the AI game engine powered by wiki-rag-lab.

## Features

- **Multi-turn Chat**: Chat with history management
- **Streaming Responses**: Real-time streaming chat
- **Entity Management**: Query and manage game entities
- **Reactive Data**: Automatic synchronization of entity state
- **Lua Execution**: Execute Lua code for game logic
- **Type-safe**: Full TypeScript support

## Installation

```bash
npm install @pubwiki/sandbox-llm-client
```

## Usage

```typescript
import { initWikiRAG } from '@pubwiki/sandbox-llm-client'

// Provider is injected by sandbox-client
const provider = (window as any).__wikiRAGProvider
const rag = initWikiRAG(provider)

// Chat with history
const result = await rag.chat("Tell me about the world", "session_1")
console.log(result.text)

// Streaming chat
for await (const chunk of rag.chatStream("Continue the story", "session_1")) {
  if (chunk.type === 'stream_chunk') {
    process(chunk.chunk)
  }
}

// Query entities
const result = await rag.query("Who is the protagonist?")

// Access reactive entity data
await rag.reactive.entities.allsync()
const protagonist = rag.reactive.entities.get("2")
console.log(protagonist.components.Identity.properties.true_name)

// Watch for changes
rag.reactive.entities.watch((key, oldValue, newValue) => {
  console.log(`${key} changed from ${oldValue} to ${newValue}`)
})
```

## API Reference

### WikiRAGClient

The main client class for interacting with WikiRAG.

#### Methods

- `chat(message, historyId?, preset?, options?)` - Multi-turn chat with history
- `chatStream(message, historyId?, preset?, options?)` - Streaming chat
- `query(message, preset?, options?)` - Single query without history
- `getEntityOverview(entityId)` - Get entity overview
- `listEntities()` - List all entities
- `getHistory(historyId)` - Get chat history
- `setHistory(historyId, messages)` - Set chat history
- `clearHistory(historyId)` - Clear chat history
- `executeLua(code)` - Execute Lua code

#### Properties

- `reactive.entities` - Reactive entity access

### ReactiveEntities

Provides reactive access to entity data with automatic synchronization.

#### Methods

- `get(entityId)` - Get reactive proxy for entity
- `allsync()` - Synchronize all entity data
- `watch(callback, filter?)` - Watch for entity changes
- `watchWith(filter, callback)` - Watch with custom filter

## Architecture

This library is part of a three-tier architecture:

1. **Main Site** (chatbot-ui) - Manages WikiApp instance and RDF storage
2. **Sandbox** (sandbox-client) - Provides secure execution environment
3. **User Game Code** - Uses this library to interact with AI engine

Communication flows through MessageChannel/MessagePort for security and isolation.

## License

MIT
npm package: @pucelle/ff
Description: A small JavaScript utility library, to make web programming easier.
Author: pucelle
Latest version: 1.3.0
Deprecated: Use ff-kit instead

# ff

## About

**ff** named from "Frequently-used Functions", it's a small JavaScript utility library for Web or NodeJs programming.

Every function work independently and have no dependency, so you can also copy one or some to your projects when required.


## Features

It includes two parts:

 - `base`: used to process base types of data.
 - `dom`: used to handle complicated things in building a web UI.

### Base

 - `array`: To add, remove, find items from array, do set operation, and order by, group by, aggregate datas just like what you do in SQL.
 - `date`: To read / write each part of a date, and format a date.
 - `duration`: Express a time period, type can be string, seconds count or object. Can be used to added to a date.
 - `event-emitter`: An event emitter as super class to listen and emit events. It supports scope argument when registering events, such that you don't need to cache binded handler to unregister it later.
 - `function`: Includes some classes and corresponding utility function to handle timeout, interval, throttle, debounce.
 - `number`: To process number decimal count, precision, mod, constrain.
 - `object`: To assign, deeply clone and compare objects.
 - `queue`: A queue class to run tasks with a specified concurrency.
 - `string`: To process strings, especially to match, format, transfer strings.
 - `sleep`: To sleep for a while.
 
### DOM

 - `align`: To align element to a target element by specified position, If no enough space, will adjust align position automatically. Used to build popup components.
 - `animate`: Run animation on element.
 - `css`: Get and set style values.
 - `html`: Encode and decode HTML codes.
 - `mouse-leave`: Call callback when mouse leaves several elements, Useful to build popup components.
 - `net`: Class to load several resources and gives a total progress.
 - `node`: To check node index, size, visible state.
 - `query`: To process URL query.
 - `scroll`: To test scroll state, scrolls element into view or to top.
 - `storage`: Just like localStorage, except here it read / write json datas.
 - `watch-layout`: To watch element's layout state and get notifications when they changed.


## Documentation

Simple [documentation](https://pucelle.github.io/ff/) is here (Thanks to [typedoc](https://typedoc.org/)).


## License

MIT
npm package: @pucelle/flit
Description: A light weight Web Component framework using ES template literal and Proxy.
Author: pucelle
Latest version: 1.3.1
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# Flit


## About

**Flit** is a light weight web library, in it you can define your custom component and render it uses syntax like `` html`<component-name />` ``

**Flit** was inspired from [lit-html](https://lit-html.polymer-project.org/).


## Features

 - Written in typescript.
 - Using ES template literal to render component.
 - Using `Proxy` to observe data changes and update components automatically.
 - Supports partial rendering.
 - Supports scoped style by rendering CSS codes dynamically.

For more details, preview [flit-ui](https://github.com/pucelle/flit-ui).


## Documentation

Simple [documentation](https://pucelle.github.io/flit/) is here (Thanks to [typedoc](https://typedoc.org/)). More resources will come in the future.


## License

MIT
npm package: @pucelle/flit-basis
Description: Basis libraries for `Flit`
Author: pucelle
Latest version: 1.3.0
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# Flit Basis


## About

**Flit Basis** is the basis libraries for `Flit` - <https://github.com/pucelle/flit>, includes:

 - observer: Observe dependencies of a component, and trigger updating when it's dependency data changed.
 - queue: Order the update queue of things that need to be updated.
 - watcher: Watch a value and trigger callbacks after it's dependency data changed.


## License

MIT
npm package: @pucelle/link
Description: Link global modules to local
Author: pucelle
Latest version: 1.0.1

# @pucelle/link


Registers a `lnk` command:

- `lnk module-name`: Link global module to local and update "dependencies".
- `lnk *`: Link all required dependencies from global modules to local.
- `-D`: Link required dependencies and devDependencies from global modules to local.
- `-L`: If global module is not installed, will install latest version.

Note on MacOS, you should use `lnk '*'` instead of `lnk *`.