open-index/open-npm huggingface dataset:
npm package: @ideaconsult/anno-tip
Description: Lightweight web annotation library built on top of Tippy.js
Author: Ivan
Latest version: 1.0.0

# AnnoTip - easy, flexible and fun annotation library for the web

## Usage

```js
var annoTip = new AnnoTip({
  onSelection: function (anno) {
    // anno.content = anno.selection.toUpperCase();
  },
  onAction: function (action, anno) {
    console.log("AnnoTip: onAction: " + action);
    if (action === 'edit') {
      // anno.content = anno.selection.toUpperCase();
      this.update(anno).getFrame().addClass('openned');
    }
    else
      this.discard();
  },
  onClose: function (anno) {
    console.log("AnnoTip: onClose");
  }
});

annoTip.attach(document.body);
```

Check the [example/test page](tests/dev.html).

Here is the [API](./API.md) for more detailed explanation of all settings.

## Credits

[Marker Pen icon](https://icons8.com/icons/set/marker-pen) by [Icons8](https://icons8.com)

[No Edit icon](https://icons8.com/icons/set/no-edit) by [Icons8](https://icons8.com)

[Task Completed icon](https://icons8.com/icons/set/task-completed) by [Icons8](https://icons8.com)

[Annotator project](http://annotatorjs.org) for the test page.



---
npm package: @ideaconsult/solr-jsx
Description: A lightweight, JavaScript engine for building Solr requests
Author: Ivan
Latest version: 0.16.2

# SolrJsX
A JavaScript client library for managing Solr requests


## TODO

- Finish support for Json (in-body) requests. (`QueryingJSON` skill).
- Add IdentityData skill - just transfering data form `afterRequest` to `onData`.

- Potentially make widgets Vue.js enriched, i.e. - supplying only element (template).

- Add some unit tests.
- Complete documentation.
npm package: @ideadesignmedia/arguments.js
Description: A minimal, zero-dependency helper that turns Node.js command-line arguments in `key=value` form into a plain object. It is designed for simple tooling scripts where a full-featured parser would be overkill.
Author: ideadesignmedia
Latest version: 1.0.2

# @ideadesignmedia/arguments.js

A minimal, zero-dependency helper that turns Node.js command-line arguments in `key=value` form into a plain object. It is designed for simple tooling scripts where a full-featured parser would be overkill.

## Installation

```bash
npm install @ideadesignmedia/arguments.js
```

## Quick start

```js
// cli.js
const args = require('@ideadesignmedia/arguments.js');

console.log(args.environment);
console.log(args.debug);
```

Run your script by passing `key=value` arguments after the script name:

```bash
node cli.js environment=production debug=true
```

Output:

```
production
true
```

## How it works

- Reads from `process.argv` starting at index 2 (the arguments after your script name).
- Splits each argument on the first `=` into a key and value.
- Stores the result in an object where each key maps to a string value (or `undefined` if no value is provided).
- Later instances of the same key overwrite earlier ones.

Because the parser does not coerce or validate values, anything after `=` is kept as-is. Arguments without `=` (for example `--flag`) become keys whose value is `undefined`.

## TypeScript support

The package ships with a `Record<string, string | undefined>` definition, making it straightforward to use with TypeScript without additional configuration.

## License

MIT
npm package: @ideadesignmedia/config.js
Description: Side-effect-only helper that reads a `config.json` file in your current working directory and copies its contents into `process.env`.
Author: ideadesignmedia
Latest version: 1.0.3

﻿# @ideadesignmedia/config.js

Side-effect-only helper that reads a `config.json` file in your current working directory and copies its contents into `process.env`.

## Installation

```sh
npm install @ideadesignmedia/config.js
```

## Prepare `config.json`

Create a `config.json` alongside the script that will run your application. Two shapes are supported:

- **Object form**

  ```json
  {
    "API_BASE_URL": "https://api.example.com",
    "NODE_ENV": "development"
  }
  ```

- **Array form**

  ```json
  [
    { "key": "API_BASE_URL", "value": "https://api.example.com" },
    { "key": "NODE_ENV", "value": "development" }
  ]
  ```

Every key becomes an environment variable (values are stored as strings). Missing files cause the package to throw `Error: Please add config.json` on startup.

## Usage

Import the package once near your entry point. No value is exported; the import is only for its side effects.

- **CommonJS**

  ```js
  require('@ideadesignmedia/config.js');

  console.log(process.env.API_BASE_URL);
  ```

- **ES modules / TypeScript**

  ```ts
  import '@ideadesignmedia/config.js';

  const apiBaseUrl = process.env.API_BASE_URL;
  ```

The module can be imported multiple times without issue. Subsequent imports simply reuse the environment variables already attached to `process.env`.

## Tips

- Keep `config.json` out of version control if it contains secrets; add it to `.gitignore`.
- Prefer string values in your config file; Node.js stores environment variables as strings.
- Combine this loader with packages like `dotenv` or deployment-specific configuration files as needed.
npm package: @ideadesignmedia/convert-pdf-md
Description: Tiny TypeScript CLI to convert PDF <-> Markdown (basic, lightweight).
Author: Idea Design Media
Latest version: 1.0.0

# @ideadesignmedia/convert-pdf-md

A tiny TypeScript CLI that converts **Markdown <-> PDF** with zero browser/runtime baggage. It includes a rich renderer/extractor for best-effort formatting plus a lean core fallback for quick text-only conversion.

## Features

- Autodetects input (`.md`, `.markdown`, `.pdf`) and infers output paths.
- CLI supports `--out`, `--stdout`, `--force`, and `--engine` to swap between rich/core modes.
- Markdown -> PDF powered by `pdfkit` (headings, lists, code fences, blockquotes, tables, basic image handling).
- PDF -> Markdown powered by `pdfjs-dist` with heuristics (headings from font size, bold/italic, bullets, links, placeholders for images).
- Ships compiled CommonJS (`dist/`) only; `.npmignore` keeps sources and tooling out of the package.
- Tooling: ESLint, Prettier, Vitest with end-to-end style tests against the built bundle.

> WARNING: PDF -> Markdown uses text extraction and heuristics. Layout, custom fonts, and complex graphics cannot be fully preserved.

## Install (local dev)

```bash
yarn install
yarn build
```

Node.js 18+ is required.

## CLI usage

Once published:

```bash
npx @ideadesignmedia/convert-pdf-md <input> [--out path] [--stdout] [--force] [--engine rich|core]
```

Local development (after `yarn build`):

```bash
node dist/cli.js sample/sample.md -o sample/out.pdf
node dist/cli.js sample/sample.pdf -o sample/out.md
```

## Engines

- **rich** (default)
  - Markdown -> PDF: styled output via `pdfkit` (bold/italic, headings, numbered/bullet lists, code blocks with shading, blockquotes, tables, links, image embedding).
  - PDF -> Markdown: structure-aware extraction using `pdfjs-dist` (font-size based heading detection, bold/italic, bullet inference, link recovery, image placeholders).
- **core**
  - Markdown -> PDF: same renderer as rich but without image lookups.
  - PDF -> Markdown: quick text extraction via `pdfjs-dist` without layout heuristics.

Switch engines on demand:

```bash
npx @ideadesignmedia/convert-pdf-md input.pdf --engine core
npx @ideadesignmedia/convert-pdf-md input.md --engine rich
```

### Programmatic usage

```ts
import {
  convertFile,
  convertMarkdownToPdf,
  convertPdfToMarkdown,
  mdToPdf,
  pdfToMd,
} from '@ideadesignmedia/convert-pdf-md';

// Auto-detect by extension / magic
await convertFile('path/to/input.md');
await convertFile('path/to/input.pdf', { out: 'output.md', engine: 'core' });

// Direct helpers
const pdfBuffer = await convertMarkdownToPdf('# Hello', { engine: 'rich' });
const markdown = await convertPdfToMarkdown(pdfBuffer);
await mdToPdf('input.md', 'output.pdf', { margin: 48 });
await pdfToMd('input.pdf', 'output.md');
```

## Repository

https://github.com/ideadesignmedia/convert-pdf-md.git

## Development workflow

```bash
yarn lint
yarn build
yarn test
```

Vitest runs against the compiled output in `dist/` to mirror the published package.

## License

MIT � Idea Design Media