open-index/open-npm huggingface dataset:
npm package: @rune-ascii/animations
Description: Animation data for rune-ascii, served via CDN
Latest version: 0.2.0

# @rune-ascii/animations

Pre-generated ASCII art animation data for [`rune-ascii`](https://www.npmjs.com/package/rune-ascii). This package exists so that jsDelivr CDN mirrors it automatically, allowing the `<Rune>` component to fetch individual animations on demand without bundling them all.

**You don't need to install this package directly.** The `rune-ascii` React component fetches animations from this package via CDN automatically.

## How it works

When you render a component like:

```tsx
import { Rune } from "rune-ascii";

<Rune name="ghost" />;
```

The `rune-ascii` component constructs a CDN URL like:

```
https://cdn.jsdelivr.net/npm/@rune-ascii/animations@0.1.4/ghost.rune.json
```

...and fetches just that one animation. The browser caches it. You only download the animations you actually use.

## Available animations

| Animation       | Description          |
| --------------- | -------------------- |
| `fire`          | Flickering fire      |
| `flame`         | Single flame         |
| `ghost`         | Floating ghost       |
| `earth1`        | Spinning globe       |
| `earth2`        | Spinning globe (alt) |
| `saturn`        | Saturn with rings    |
| `coin`          | Spinning coin        |
| `orangutan`     | Orangutan            |
| `gorilla`       | Gorilla              |
| `shoes`         | Shoes                |
| `tuxLaptop`     | Tux on a laptop      |
| `rocket`        | Rocket launch        |
| `flowerSpinner` | Spinning flower      |
| `loaderGood`    | Loading spinner      |
| `successCheck1` | Success checkmark    |
| `error`         | Error indicator      |
| `warning`       | Warning indicator    |
| `sleepEmoji`    | Sleep emoji          |
| `angryEmoji`    | Angry emoji          |
| `geekedEmoji`   | Geeked emoji         |
| `aitBot`        | AI robot             |

Each animation is available in two sizes: `"m"` (90 columns, default) and `"s"` (50 columns).

## Creating your own animations

Use the companion CLI to generate custom `.rune.json` files from any video:

```bash
npx @rune-ascii/cli generate ./video.mp4 --name "my-animation"
```

See [@rune-ascii/cli](https://www.npmjs.com/package/@rune-ascii/cli) for full documentation.

## Related packages

- [`rune-ascii`](https://www.npmjs.com/package/rune-ascii) — React component for playing ASCII animations
- [`@rune-ascii/cli`](https://www.npmjs.com/package/@rune-ascii/cli) — CLI for generating `.rune.json` animations from video files

## License

MIT
npm package: @rune-cli/rune
Description: Rune is an agent-friendly CLI framework built around the concept of file-based command routing.
Author: Shinya Fujino
Latest version: 0.0.23

# Rune

Rune is an agent-friendly CLI framework built around the concept of file-based command routing. Directory structure maps directly to CLI command structure.

> [!IMPORTANT]
> This package is experimental and unstable. Proceed with caution when using it.

## Getting Started

Scaffold a new project:

```bash
npm create rune-app my-cli
cd my-cli
npm install
```

This generates the following structure:

```
my-cli/
  src/
    commands/
      hello.ts
  package.json
  tsconfig.json
```

Run your CLI directly from source:

```bash
npm run start -- hello
# => hello from my-cli
```

Build for production:

```bash
npm run build
```

## Defining Commands

Commands are TypeScript files under `src/commands/`. The directory structure maps directly to the command structure:

```
src/commands/
  hello.ts                → my-cli hello
  project/
    index.ts              → my-cli project
    create.ts             → my-cli project create
    list.ts               → my-cli project list
```

Simple leaf commands can be bare files (`hello.ts`), while commands that need subcommands use a directory with `index.ts`.

Each command file exports a default `defineCommand()` call:

```ts
import { defineCommand } from "@rune-cli/rune";

export default defineCommand({
  description: "Greet someone",
  args: [{ name: "name", type: "string", required: true }],
  options: [{ name: "loud", type: "boolean", short: "l" }],
  run({ args, options, output }) {
    const greeting = `Hello, ${args.name}!`;
    output.log(options.loud ? greeting.toUpperCase() : greeting);
  },
});
```
npm package: @runebolt/build
Description: RuneBolt build system and webpack configuration
Author: Keira Hopkins
Latest version: 0.1.0

# @runebolt/build

Build system and webpack configuration for RuneBolt framework.

## Features

- Webpack configuration for React applications
- TypeScript compilation
- Production optimisations
- Development builds

## Installation

```bash
# npm
npm install @runebolt/build

# yarn
yarn add @runebolt/build

# pnpm
pnpm add @runebolt/build
```

## Usage

```typescript
import { createWebpackConfig } from '@runebolt/build';

const config = createWebpackConfig({
  entry: './src/client/index.tsx',
  outputPath: './dist'
});
```
npm package: @runebolt/cli
Description: RuneBolt command line interface
Author: Keira Hopkins
Latest version: 0.1.0

# @runebolt/cli

Command line interface for RuneBolt framework.

## Installation

```bash
npm install -g @runebolt/cli
```

## Commands

```bash
runebolt create <name>    # Create new project
runebolt dev              # Start development server
runebolt build            # Build for production
runebolt start            # Start production server
```

## Usage

```bash
npx runebolt create my-app
cd my-app
npx runebolt dev
```
npm package: @runebolt/core
Description: RuneBolt core server functionality
Author: Keira Hopkins
Latest version: 0.1.0

# @runebolt/core

Core server functionality for RuneBolt framework.

## Features

- HTTP server with route handling
- API route registration
- Static file serving
- Middleware support

## Installation

```bash
# npm
npm install @runebolt/core

# yarn
yarn add @runebolt/core

# pnpm
pnpm add @runebolt/core
```

## Usage

```typescript
import { createServer } from '@runebolt/core';

const server = createServer({
  port: 3000,
  apiRoutes: './api'
});
```
npm package: @runebolt/dev-server
Description: RuneBolt development server with hot reloading
Author: Keira Hopkins
Latest version: 0.1.0

# @runebolt/dev-server

Development server with hot reloading for RuneBolt framework.

## Features

- Hot module replacement
- Live reloading
- Development middleware
- Error overlay

## Installation

```bash
# npm
npm install @runebolt/dev-server

# yarn
yarn add @runebolt/dev-server

# pnpm
pnpm add @runebolt/dev-server
```

## Usage

```typescript
import { createDevServer } from '@runebolt/dev-server';

const server = createDevServer({
  port: 3000,
  hot: true
});
```
npm package: @runebolt/types
Description: RuneBolt TypeScript type definitions
Author: Keira Hopkins
Latest version: 0.1.1

# @runebolt/types

TypeScript type definitions for RuneBolt framework.

## Installation

```bash
# npm
npm install @runebolt/types

# yarn
yarn add @runebolt/types

# pnpm
pnpm add @runebolt/types
```

## Usage

```typescript
import type { ApiRoute, ServerConfig } from '@runebolt/types';

const route: ApiRoute = {
  method: 'GET',
  path: '/api/health',
  handler: (req, res) => res.json({ status: 'ok' })
};
```
npm package: @runebreak/librsync-bundled
Description: Bundled librsync (WASM) from @dldc-packages/librsync for Node and Electron
Latest version: 0.1.3

# @runebreak/librsync-bundled

This repo vendors https://github.com/dldc-packages/librsync and bundles it for Node and Electron (main) using esbuild.

## Usage

ESM:

```ts
import librsync from "@runebreak/librsync-bundled";

const signature = librsync.signature(new Uint8Array([1, 2, 3]));
```

CommonJS:

```js
const librsync = require("@runebreak/librsync-bundled");

const signature = librsync.signature(Buffer.from("hello"));
```

Helpers (Node/Electron):

```ts
import {
	applyDeltaOverwrite,
	makeDiff,
	makeSignature,
} from "@runebreak/librsync-bundled";

await makeSignature("basis.bin", "out/basis.sig");
await makeDiff("basis.bin", "new.bin", "out/delta.bin");
await applyDeltaOverwrite("basis.bin", "out/delta.bin");
```

## Build

```sh
npm install

git submodule update --init --recursive

npm run build
```

## Updating upstream

This repo tracks upstream librsync via a git submodule at `vendor/librsync`.

To update it to a newer upstream tag/commit:

```sh
cd vendor/librsync
git fetch --tags

# Option A: move to a tag
git checkout v2.0.2

# Option B: move to the latest on a branch
# git checkout main && git pull

cd ../..
git add vendor/librsync
```

Then rebuild:

```sh
npm run build
```

Build outputs:
- `dist/index.js` (ESM)
- `dist/index.cjs` (CJS)

## Licensing

See `LICENSE`, `NOTICE`, and `THIRD_PARTY_NOTICES.md`.