open-index/open-npm huggingface dataset:
npm package: @jrsanchezalcala/zarray
Description: Zuper Array , and array with Zuper - Powers and more capabilites.
Author: Juan Sanchez Alcala
Latest version: 1.0.0

# ZArray
Zuper Array , and array with zuper-powers and more capabilites.

This is a zuper array designed to manage objects inside and indexing them.

### New Capabilites ###

- Specify how to get the key of each element and index them. So we can access to an object inside fast like we were in a map. e.g.

```
import {ZArray} from '@jrsanchezalcala/zarray';

//here we define that the key of the objects that we are going to store is the 'id',

const zarray = new ZArray('id');
zarray.push({ id : 1232 , brand : "mercedes" , color : "white" })
zarray.push({ id : 2223 , brand : "ford" , color : "blue" })
zarray.push({ id : 3321 , brand : "seat" , color : "red" })

let object = zarray.get(1232)); //this will retrieve the object with 'id' = 1232 
``` 
```
//Also we can pass a function which first parameter will be the element to get the key.
const zarray = new ZArray((item) => {
    return item.id;
});

```

Don't forget that this is an array so we have all the zuperpowers of an array.

```
zarray.filter(item => item.color === "red" ).map(item => item.id)

```

- You can update an existing element so easy without the need to search where is the element in the array.

```
zarray.set({id : 2223 , "ford" , color : "black" });
```

- You can set and autosort passing sort parator method so everytime you set or update a new item the array will be sorted automatically.

```
zarray.setAutoSort((a , b) => a - b)

```

```
// we can also pass this in constructor options
const zarray = new ZArray('id',{
    autosort : (a , b) => a - b)
})
```

- You can load all the data from array easy

```
zarray.load([{ id : 1232 , brand : "mercedes" , color : "white" },{ id : 2223 , brand : "ford" , color : "blue" }])

```

So that is for now. This array is still a mediocre  array hero but with more training and time it will be a powerful data structure to fight agains huge data villains

## License

MIT
npm package: @jrscally/dryai-mcp-server
Description: Official MCP server for Dry.ai
Author: @dryai
Latest version: 1.1.0

# dryai-mcp-server

This project implements an [MCP server](https://spec.modelcontextprotocol.io/) for [Dry.ai](https://dry.ai).

## Steps to Configure the Your User

1. Log in to [Dry.ai](https://dry.ai) and navigate to your **Dry Profile**.
<img width="611" alt="Screenshot 2025-04-11 at 12 15 17 PM" src="https://github.com/user-attachments/assets/462d5e88-97f0-4f87-8e64-1e75c07bb8a8" />

2. Generate an **MCP Token** from your profile. Make note of this token, as you will use it later. Select smartspacess that you are a member of
    which have been configured for MCP access. See 
   
<img width="889" alt="image" src="https://github.com/user-attachments/assets/5ecc2bde-61e6-491b-8858-ce2f5e8a8eb8" />

## Steps to Configure a Smartspace

1. Open the settings for the smartspace which you want to connect. Click the "Chat" tab and show More Options
<img width="1029" alt="image" src="https://github.com/user-attachments/assets/dfa4c2c0-d1ac-495f-b2a0-50995b3c2df7" />

2. Click the toggle to enable MCP on teh smartspace and provide a description that will let Claude know when you want to send questions to this smartspace.

## Steps to build your MCP Server and connect to Claude Desktop

1. Modify your `claude_desktop_config.json` file to include the following configuration:
 ```json
   {
      "mcpServers": {
        "dryai": {
         "command": "npx",
         "args": ["-y", "@jrscally/dryai-mcp-server"],
         "env": {
            "MCP_TOKEN": "<MCP TOKEN>"
         }
      }
      }
   }
   ```

2. Run Claude Desktop - it will connect to dry and all of your configured smartspaces wlll appear as tools to ask questions and add items
npm package: @jrsinclair/rehype-sidenotes
Description: Takes HTML source containing GFM-style footnotes and converts them to sidenotes inlined into the page source.
Author: James Sinclair
Latest version: 0.0.5

# Rehype sidenotes

This plugin takes <abbr title="Github Flavoured Markdown">GFM</abbr> or Multimarkdown-style
footnotes and converts them into sidenotes. That is, it places them inline with the document
content. This way (if you choose) you can float them into a margin.

Go from boring old footnote lists at the bottom of your page like this:

![Boring footnote list](public/boring-old-footnote-list.png)

To exciting inline sidenotes like this:

![Exciting sidenote rendered inline on a small screen](public/sidenotes-on-mobile.png)

![Exciting sidenote rendered to the right on a wider screen](public/sidenotes-on-tablet.png)

## Installation

```
npm i -D @jrsinclair/rehype-sidenotes
```

## Usage

```javascript
import rehype from "rehype";
import sidenotes from '@jrsinclair/rehype-sidenotes';
import { unified } from "unified";

unified()
  .use(rehypeParse, { fragment: true })
  .use(sidenotes)
  .process(`<main>
    <div>
      <p>This is some text.</p>
      <p>This is some text with a footnote ref.<sup><a id="user-content-fnref-1" href="#user-content-fn-1">1</a></sup></p>
    </div>
    <section data-footnotes="" class="footnotes">
      <ol>
        <li id="user-content-fn-1"><p>This is the footnote.</p></li>
      </ol>
    </section>
</main>`);
```

### Input

```html
<main>
  <div>
    <p>This is some text.</p>
    <p>This is some text with a footnote ref.<sup><a id="user-content-fnref-1" href="#user-content-fn-1">1</a></sup></p>
  </div>
  <section data-footnotes="" class="footnotes">
    <ol>
      <li id="user-content-fn-1"><p>This is the footnote.</p></li>
    </ol>
  </section>
</main>
```

### Output

```html
<main>
  <div>
  <p>This is some text.</p>
  <p>This is some text with a footnote ref.<sup><a id="user-content-fnref-1" href="#user-content-fn-1">1</a></sup></p>
  <aside class="Sidenote" id="user-content-fn-1" role="doc-footnote">
    <p><small class="Sidenote-small"><sup class="Sidenote-number">1&thinsp;</sup>This is the footnote.</small></p>
  </aside>
  </div>
</main>
```

## License

[MIT](./license), © [James Sinclair](https://jrsinclair.com).
npm package: @jrson83/inertia-preact
Description: The Preact adapter for Inertia.js
Author: Jörn Spangenberg
Latest version: 1.0.0-beta.2.1

# Inertia.js Preact Adapter

The [Preact](https://preactjs.com/) adapter for
[Inertia.js](https://inertiajs.com).

> This is a port of the original
> [Inertia.js React Adapter](https://github.com/inertiajs/inertia).

## Installation

Install the adapter as npm module:

```bash
npm install @jrson83/inertia-preact -D
```

More information on the adapter can be found on my blog
[jrson.me](https://jrson.me).

## Ping CRM Demo

A live demo of the app & SSR is available at
[https://pingcrm-preact.jrson.de/](https://pingcrm-preact.jrson.de/).

## Ping CRM Repository

The Ping CRM Preact repository is available at
[https://github.com/jrson83/pingcrm-preact](https://github.com/jrson83/pingcrm-preact).