open-index/open-npm huggingface dataset:
npm package: @starsgathered/json-analyzer-core
Description: A TypeScript library for analyzing, formatting, minifying, and visualizing JSON data in a structured way. Perfect for developers and data analysts.
Author: StarsGathered
Latest version: 1.0.1

# JSON Analyzer Typescript

Professional JSON analysis library in **TypeScript** — fast, strictly typed, DOM-free, fully functional.  
Analyze JSON files or objects to get **object count, array count, max depth, unique keys, array lengths, and more**.

---

## Features

- Fully **TypeScript typed** with strict mode
- Returns **statistics and unique keys** from any JSON object
- Lightweight, **DOM-free**, can be used in **Node.js** or **browser**
- Supports nested objects and arrays
- Fully testable with Jest
- Scalable and maintainable code

---

## Installation

```bash
npm install json-analyzer-core
# or
yarn add json-analyzer-core
````

---

## Usage

### Import the library

```ts
import { JSONAnalyzer } from 'json-analyzer-core';
```

### Analyze JSON string

```ts
const rawJSON = '{"a":1,"b":[1,2,3],"c":{"d":"text","e":null}}';
const jsonObject = JSON.parse(rawJSON);

const result = JSONAnalyzer.analyze(jsonObject, rawJSON);

console.log(result.stats);
/*
{
  objects: 2,
  arrays: 1,
  keys: 5,
  depth: 3,
  totalBytes: 49,
  maxArray: 3,
  minArray: 3,
  avgKeys: 2.5
}
*/

console.log(result.keys);
// ['a', 'b', 'c', 'd', 'e']
```

---

### Types

```ts
import { JSONStats, JSONAnalysis } from 'json-analyzer-core';

interface JSONStats {
  objects: number;
  arrays: number;
  keys: number;
  depth: number;
  totalBytes: number;
  maxArray: number;
  minArray: number;
  avgKeys: number;
}

interface JSONAnalysis {
  stats: JSONStats;
  keys: string[];
}
```

---

## Example in Node.js

```ts
import fs from 'fs';
import { JSONAnalyzer } from 'json-analyzer-core';

const fileData = fs.readFileSync('data.json', 'utf-8');
const parsed = JSON.parse(fileData);

const analysis = JSONAnalyzer.analyze(parsed, fileData);

console.log('Stats:', analysis.stats);
console.log('Unique Keys:', analysis.keys);
```

---

## Example in Browser (ESM)

```ts
import { JSONAnalyzer } from './dist/index.js';

const jsonStr = '{"users":[{"id":1,"name":"Alice"},{"id":2,"name":"Bob"}]}';
const parsed = JSON.parse(jsonStr);

const analysis = JSONAnalyzer.analyze(parsed, jsonStr);
console.log(analysis.stats);
console.log(analysis.keys);
```

---

## Testing

```bash
npm test
```

Example test is included in `test/analyzer.test.ts` using Jest.

---

## Development

* Build TypeScript:

```bash
npm run build
```

* Lint and fix issues:

```bash
npm run lint
npm run lint:fix
```

---

## Notes

* All processing happens locally — **100% privacy**
* Works with **any valid JSON**
* Strict TypeScript ensures **safe usage** in large projects

---

## License

MIT License
npm package: @starsoul/deploy
Description: deploy files to ecs
Author: xiaosl
Latest version: 1.0.2

# Deploy

deploy files to ecs.

## Useage

```
const deploy = require('@starsoul/deploy');
const SERVER_LIST = [
  {
    host: 'xxx',// ip
    port: 22,// 端口
    username: 'xxx', // 登录服务器的账号
    password: 'xxx', // 登录服务器的密码
    outputPath: '', // 要部署的本地目录
    deployPath: '', // 服务器目录
    backupPath: '', // 备份上个版本的目录
  },
];
deploy(SERVER_LIST);
```
npm package: @starsoul/editorconfig
Description: Generate .editorconfig file.
Author: xiaosl
Latest version: 0.1.1

Generate .editorconfig file in current directory.
Select `react`,`vue`,`angular` template.

# Usage
```
npm install @starsoul/editorconfig --save-dev
or 
npm install @starsoul/editorconfig -g

@starsoul/editorconfig --init
```
npm package: @starsoul/my-request
Description: A request tool based on umi-request.
Author: starsoul
Latest version: 1.0.4

English | [简体中文](./README_zh-CN.md)

# my-request

The network request library for alipay miniprogram, based on [`umi-request`](https://www.npmjs.com/package/umi-request).

## Installation

```
npm install --save my-request
```
npm package: @starsoul/util
Description: ## 常用方法
Latest version: 1.0.8

# 工具库

## 常用方法

```javascript
# useage
import {getHeader, xxx} from '@starsoul/util';
```

### getHeader - 从 ResponseHeader 获取值

```javascript
/**
 * 从response header中获取key的value值
 * @param {ResponseHeader} headers
 * @param {string} key
 */
getHeader(headers, key)
```

### downloadFileFromUrl - url 方式下载文件

```javascript
/**
 * 下载方法
 * @param {string} url 接口地址
 * @param {string} fileName 文件名
 */
downloadFileFromUrl(url, fileName)
```

### downloadFileFromBlob - blob 方式下载文件

```javascript
/**
 * 下载文件
 * @param {Blob} blob 文件blob对象
 * @param {string} fileName 文件名
 */
downloadFileFromUrl(url, fileName)
```

### uploadFileToOSS - 上传文件到 OSS

```javascript
import {uploadFileToOSS} from '@starsoul/util'
const fileUrl = await uploadFileToOSS('获取签名地址',{
  file: File,
  prefixPath: string; //路径前缀
  prefixFile: string; //文件名前缀 default ''
})
```

### listToMap

```javascript
/**
 * list to map
 * @param {Array} list
 * @param {string} key default 'code'
 * @param {string} value default 'val'
 */
listToMap (list = [], key = 'code', value = 'val'): object
```

### dictToMap - 把后台字典转成 Enum

```javascript
/**
 * dict to map
 * @param {Array} list
 * @param {'string' | 'number'} type key的类型 default 'string'
 */
dictToMap (list = [], type): object
```

### mapToOptions - 把 map 转成 select 组件的 options

```javascript
mapToOptions(map):list<{key:string, value:string}>
```

### trimSpace(event) 删除value的空格

### formatNumber 1234 -> 1,234

### sortByKey(list, key) 数组排序

### compressFile(file, maxSize) 压缩图片

## storage

```javascript
# useage
import {storage} from '@starsoul/util'
```

- getItem(key:string)
- setItem(key:string, value:any)
- clearItem(key:string)
- clearAll()

## 常量

```javascript
const BoolEnum = {
  1: '是',
  0: '否'
}
```
npm package: @starspaceio/fixed-price-market
Description: smart contract cli and sdk
Latest version: 1.0.3


# fixed-price-market

This package contains the command line client (cli) and software development kit (sdk) for interacting with the starspace fixed price market smart contracts and related graphql apis.


## Development tips

`yarn run watch` is your friend.

Assuming watch is running w/o errors, you can interact with the cli by running:
`yarn exec --silent -- fixed-price-market` eg:

```bash
yarn exec --silent -- fixed-price-market help list-token
Usage: fixed-price-market list-token [options] <creator-address> <collection-name> <token-name> <price>

Options:
  -c, --config <string>  aptos config (default: ".aptos/config.yaml")
  -m, --module <string>  module address
  -s, --seller <string>  aptos profile (default: "default")
  -h, --help             display help for command
```

### Listing allowed collections

Use this command to see what collection allowed events we've ingested.

NOTE: this doesn't query the smart contract, but could be extended to do so in the future & probably will to aid in debugging production operations.

Usage:
```bash
yarn exec --silent -- fixed-price-market list-allowed-collections --help
Usage: fixed-price-market list-allowed-collections [options]

Options:
  -g, --graphql-endpoint <string>  module address (default: "http://127.0.0.1:9080/v1/graphql")
  -h, --help                       display help for command
```

Output:
```bash
yarn exec --silent -- fixed-price-market list-allowed-collections
{
  collection_allowed_events: [
    {
      id: 1,
      creator: '0xf6a8a0ee635650380698faf248066b006d11c2c2543d3b2cb75f93db4bbf21ba',
      collection: 'Degen Simians',
      collection_data_id_hash: 'a429bf9f77f0b1691c8e374edb33311eaa6d83758a063658f73255b3034634e9',
      __typename: 'collection_allowed_events'
    },
    {
      id: 2,
      creator: '0xefee40464ff3d55eaae1ad483550b466659ce0a593ae695541c0c1e91f2bf984',
      collection: 'Degen Simians',
      collection_data_id_hash: '8a943dd1851d3a7d754de7964508317999b3fe381e1456788f14d42c3853a8b8',
      __typename: 'collection_allowed_events'
    }
  ]
}
```
npm package: @starstack/strapi-plugin-auto-save
Description: Automatically saves Strapi v5 content entries as you type. Debounced background saves, live status indicator, and zero configuration required.
Author: Starstack
Latest version: 1.0.0

# Auto Save - Strapi Plugin

> Automatically saves your Strapi v5 content entries as you type. No manual saves, no lost work.

---

## Overview

Auto Save is a lightweight Strapi v5 plugin that silently saves content entries in the background while you edit. It works across all content types, handles both new and existing entries, and shows a live status indicator in the sidebar, all with zero configuration.

---

## Features

- **Automatic saving** - saves as you type, with no manual action needed
- **Smart debounce** - batches saves with a 2-second delay to avoid excessive API calls
- **New entry support** - auto-creates new entries once you start typing real content
- **Live status panel** - shows save state, last saved time, and modified fields in the sidebar
- **Safe & non-intrusive** - works silently in the background, no dialogs or page reloads
- **Zero dependencies** - built entirely on Strapi's own APIs and design system

---

## Requirements

- Strapi v5.0.0 or higher
- Node.js 18 or higher
- React 18

---

## Installation

```bash
npm install @starstack/strapi-plugin-auto-save
```

Then register the plugin in your Strapi config:

```js
// config/plugins.js
module.exports = {
  "auto-save": {
    enabled: true,
    resolve: "./node_modules/@starstack/strapi-plugin-auto-save",
  },
};
```

Restart your Strapi server. The plugin activates automatically, no further configuration needed.

---

## How It Works

1. You open any content entry in the Strapi admin
2. The plugin detects changes in the form fields
3. After a 2-second pause in typing, it saves automatically via the Strapi Document API
4. A status panel in the sidebar confirms the save with a timestamp

---

## Sidebar Panel

The Auto Save panel appears in the right sidebar of every content entry. It shows:

- Current save status (saving, saved, unsaved changes, error)
- Timestamp of the last successful save
- A list of fields that have been modified since the last save
- Error message if a save fails

---

## Contributing

Issues and pull requests are welcome at [github.com/Starstack-Technologies/strapi-plugin-auto-save](https://github.com/Starstack-Technologies/strapi-plugin-auto-save).

---

## License

MIT © [Starstack](https://starstacktech.com)
npm package: @start-app/component-palette
Description: The Startapp.Studio FormBuilder components palette
Author: Andrey Gromozdov
Latest version: 1.0.6

The Component Palette package.
=

This package is a part of FormBuilder technology powered by [Startapp.studio](https://www.startapp.studio).

Component Palette is a component for organizing building blocks of the HTML page. This component is intended for the visual design of the HTML form.
The component is fully customizable and has two embedded themes: light and dark

### Install

```bash
npm i @start-app/component-palette
```

### How to use.

```tsx
import { ComponentPaletteRegistry, IPaletteComponentDescriptor } from '@start-app/component-palatte';

// The component descriptor
const buttonDescriptor: IPaletteComponentDescriptor = { 
    name: 'button', title: 'Button', element: <span>Button</span> 
};

// The global component registry
const registry = new ComponentPaletteRegistry();

// Register the component in palette
registry.register(buttonDescriptor);

```

Component descriptor has an element field. This field shall contain a React component which will be displayed in the palette cell. 

We strongly recommend using SVG for your components icons. That provides a possibility to apply styling themes for the icons on the palette.

Something like this.

![Palette example](doc/palette.png)

### Render the component.
```tsx
import { 
    lightTheme,
    ComponentPaletteRegistry,
    ComponentPallette
} from '@start-app/component-palatte';

const paletteTheme = lightTheme;
const registry = new ComponentPaletteRegistry();

function render() {
    return (
        <ComponentPallette
            theme={paletteTheme}
            registry={registry}
            onDragStart={(event, name) => this.dragStart({event, name})}>
        </ComponentPallette>
    );
}
```
onDragStart event has the name parameter that contains the name of the dragged component.

### License
MIT
npm package: @start-app/form-builder-model
Description: The Startapp.Studio FormBuilder model
Author: Andrey Gromozdov
Latest version: 1.0.4

The FormBuilder Model package.
=

This package is a part of FormBuilder technology powered by [Startapp.studio](https://www.startapp.studio).

The model is a hierarchical representation of the DOM as JSON. Includes a visitor design pattern that allows you to change the representation of the model.

The key interface is
```ts
interface IModel {
    name: string;
    props: { 
        [prop: string]: any;
    }
}
```

- Name is a form component’s name
- Props is an object with a component's attributes and their values

An example that shows how a model might look.
```json
{
    "name": "button",
    "props": {
        "type": "submit",
        "class": "btn submit"
    }
}
```

Test
-

```bash
npm run test
```

Licence
-

MIT
npm package: @start-base/block-editor
Description: The tsup-template is a project or template designed to facilitate the creation of React components by providing certain features. Here's an explanation of its key features:
Author: Start-Base
Latest version: 0.0.5-alpha

# tsup-template

The tsup-template is a project or template designed to facilitate the creation of React components by providing certain features. Here's an explanation of its key features:

## Features

- Features of tsup-template:

Create React components with ease: This template is intended to simplify the process of building React components. It likely includes a boilerplate setup, file structure, and configuration that makes it easy to get started with creating new components without having to set up everything from scratch.

- Css bundling ready:

It appears that the template is configured to handle CSS bundling. This is important for styling your React components. CSS bundling typically involves bundling and optimizing CSS files, making sure they are efficiently loaded in the application.

- Linter Formatter installed and configured:

This template seems to come with a linter and code formatter already installed and set up. This is beneficial for maintaining a consistent and clean codebase. Linters help catch code issues, and formatters automatically format the code according to a predefined style guide.

- Storybook installed and configured:

Additionally, this template includes Storybook, a powerful tool for developing and testing UI components in isolation. With Storybook set up and configured, you can create and showcase your React component stories, making it easier to test and demonstrate your components' various states and use cases.

In summary, the tsup-template is an all-in-one solution for React component development. It provides an easy and efficient way to create components, handles CSS bundling, ensures code quality with linters and formatters, and offers the benefits of Storybook for UI component development and testing. This template simplifies the development process, saving developers time and effort.

# package-name

Shield.io badges here.

## Table of Contents

- [Installation](#installation)
- [Documentation](#documentation)
- [Components](#components)
- [Examples](#examples)
- [Demos](#demos)

## Installation

To install, you can use [npm](https://npmjs.org/) or [yarn](https://yarnpkg.com):

    $ npm install --save package-name
    $ yarn add package-name

## Documentation

Make sure to add css file to your app root file

```jsx
import 'package-name/dist/lib/index.css';
```

## Components

## Props

| Name | Type | Default | Description |
| ---- | ---- | ------- | ----------- |

## Examples

Here's an example of using the component in a React component:

```jsx
import React, { useState } from 'react';

import { Component } from 'package-name';

export default function Page() {
  return <Component />;
}
```

## Demos

For live demos of these components in action, please visit our [Storybook]() demo pages.
npm package: @start-base/react-consent-manager
Description: JavaScript library designed to simplify the management of user consents in web applications developed with React. This package is particularly useful for complying with data protection regulations such as the General Data Protection Regulation (GDPR) in t
Author: Start-Base
Latest version: 1.13.0

<p align="center">
  <a href="https://startbase.dev" target="_blank">
    <img src="https://startbase.dev/apple-touch-icon.png" width="60px;" style="padding-top: 60px" />
  </a>
</p>

<h1 align="center">@start-base/react-consent-manager</h1>

<p align="center">
  Customizable React library for managing user consent with cookie banners and privacy settings in compliance with regulations like GDPR.
</p>
<p align="center">
<a href="https://www.npmjs.com/package/@start-base/react-consent-manager">@start-base/react-consent-manager</a> is part of the <a href="https://www.npmjs.com/package/@start-base/start-ui">@start-base/start-ui</a> UI library but can also be used individually.
</p>

<p align="center">
    <a href="https://github.com/startbase-dev/react-consent-manager/blob/main/LICENSE"><img src="https://img.shields.io/npm/l/%40start-base%2Freact-consent-manager" alt="License"></a>
    <a href="https://www.npmjs.com/package/@start-base/react-consent-manager"><img src="https://img.shields.io/npm/dt/%40start-base/react-consent-manager" alt="Total Downloads"></a>
    <a href="https://www.npmjs.com/package/@start-base/react-consent-manager"><img src="https://img.shields.io/bundlephobia/minzip/%40start-base%2Freact-consent-manager" alt="Size"></a>
    <a href="https://www.npmjs.com/package/@start-base/react-consent-manager"><img src="https://img.shields.io/npm/v/%40start-base%2Freact-consent-manager" alt="Latest Release"></a>
</p>

---

<p align="center">
    <img src="consent.gif"/>
</p>

## Documentation

For full documentation, visit [start-ui.startbase.dev](https://start-ui.startbase.dev/docs/overlayComponents/consentManager).

## Installation

```bash title="Terminal"
npm install --save @start-base/react-consent-manager
```

Make sure to you import `style.css` to your App root.

```jsx title="layout.js"
import "@start-base/react-consent-manager/styles.css";
```

## Features

- CSS variables for theming are available for all components.
- Classnames are available for all components.
- Built-in dark mode support.

## Demos

For live demos of these components in action, please visit our [Storybook](https://react-consent-manager.vercel.app/) demo pages.

## Contributing

Contributions are welcomed. Feel free to submit pull requests and improvements to the project!

## Contributors

<table>
  <tr>
    <td align="center">
      <img src="https://github.com/yunusozcan.png" width="60px;" /><br />
      <sub><a href="https://github.com/yunusozcan">yunusozcan</a></sub>
    </td>
    <td align="center">
      <img src="https://github.com/emreonursoy.png" width="60px;" /><br />
      <sub><a href="https://github.com/emreonursoy">emreonursoy</a></sub>
    </td>
  </tr>
</table>
npm package: @start-base/react-modal
Description: Accessible modal dialog component and global modals provider for React.JS. This package is a enhanced version of react-modal.
Author: Start-Base
Latest version: 1.5.3

<p align="center">
  <a href="https://startbase.dev" target="_blank">
    <img src="https://startbase.dev/apple-touch-icon.png" width="60px;" style="padding-top: 60px" />
  </a>
</p>

<h1 align="center">@start-base/react-modal</h1>

<p align="center">
Accessible modal dialog component and global modals provider for React. This package is a enhanced version of <a href="https://github.com/reactjs/react-modal/">react-modal</a>.

</p>
<p align="center">
<a href="https://www.npmjs.com/package/@start-base/react-modal">@start-base/react-modal</a> is part of the <a href="https://www.npmjs.com/package/@start-base/start-ui">@start-base/start-ui</a> UI library but can also be used individually.
</p>

<p align="center">
    <a href="https://github.com/startbase-dev/react-modal/blob/main/LICENSE"><img src="https://img.shields.io/npm/l/%40start-base%2Freact-modal" alt="License"></a>
    <a href="https://www.npmjs.com/package/@start-base/react-modal"><img src="https://img.shields.io/npm/dt/%40start-base/react-modal" alt="Total Downloads"></a>
    <a href="https://www.npmjs.com/package/@start-base/react-modal"><img src="https://img.shields.io/bundlephobia/minzip/%40start-base%2Freact-modal" alt="Size"></a>
    <a href="https://www.npmjs.com/package/@start-base/react-modal"><img src="https://img.shields.io/npm/v/%40start-base%2Freact-modal" alt="Latest Release"></a>
</p>

---

<p align="center">
<img src="modals.gif" alt="Latest Release">
</p>

## Documentation

For full documentation, visit [start-ui.startbase.dev](https://start-ui.startbase.dev/docs/overlayComponents/modal).

## Installation

```bash title="Terminal"
npm install --save @start-base/react-modal
```

## Features

- React portal
- Global modals provider
- Hooks

## Demos

There is a [Nextjs Global Modals Example](/examples/nextjs) hosted on [Nextjs Demo](https://react-modal-tau.vercel.app/) which
demonstrate various features of @start-base/react-modal.

## Contributing

Contributions are welcomed. Feel free to submit pull requests and improvements to the project!

## Contributors

<table>
  <tr>
    <td align="center">
      <img src="https://github.com/yunusozcan.png" width="60px;" /><br />
      <sub><a href="https://github.com/yunusozcan">yunusozcan</a></sub>
    </td>
    <td align="center">
      <img src="https://github.com/emreonursoy.png" width="60px;" /><br />
      <sub><a href="https://github.com/emreonursoy">emreonursoy</a></sub>
    </td>
  </tr>
</table>
npm package: @start-base/start-ui
Description: <p align="center">   <a href="https://startbase.dev" target="_blank">     <img src="https://startbase.dev/apple-touch-icon.png" width="60px" style="padding-top: 60px" />   </a> </p>
Author: Start-Base
Latest version: 1.1.0

<p align="center">
  <a href="https://startbase.dev" target="_blank">
    <img src="https://startbase.dev/apple-touch-icon.png" width="60px" style="padding-top: 60px" />
  </a>
</p>

<h1 align="center">@start-base/start-ui</h1>

<p align="center">
  Discover a powerful and flexible React UI library crafted for seamless customization and effortless integration. Built specifically with Next.js in mind, these components streamline website development, enhance productivity, and empower you to create highly adaptable, user-friendly interfaces with ease.
</p>

<p align="center">
  <a href="https://github.com/startbase-dev/start-ui/blob/main/LICENSE" target="_blank"><img src="https://img.shields.io/badge/license-MIT-green.svg" alt="license" /></a>
  <a href="https://npmjs.com/package/@start-base/start-ui" target="_blank"><img src="https://img.shields.io/npm/dt/%40start-base/start-ui" alt="weekly" /></a>
  <a href="https://npmjs.com/package/@start-base/start-ui" target="_blank"><img src="https://img.shields.io/bundlephobia/minzip/%40start-base%2Fstart-ui" alt="size" /></a>
  <a href="https://npmjs.com/package/@start-base/start-ui" target="_blank"><img src="https://img.shields.io/npm/v/%40start-base%2Fstart-ui" alt="npm" /></a>
</p>

---

## Documentation

For full documentation, visit [start-ui.startbase.dev](https://start-ui.startbase.dev/docs).

## Installation

To install, you can use [npm](https://npmjs.org) or [yarn](https://yarnpkg.com):

```bash title='Terminal'
$ npm install @start-base/start-ui
# or
$ yarn add @start-base/start-ui
```

Make sure to import `styles.css` to your app root:

```tsx
import '@start-base/start-ui/styles.css';
```

## Features

- CSS variables for theming.
- Classnames for fine tuning.
- Built-in dark mode support.
- Variants for different styles.

## Demos

For live demos, please visit our [Storybook](https://start-ui-storybook.vercel.app/) page.

## Contributing

Contributions are welcomed. Feel free to submit pull requests and improvements to the project!

<table>
  <tr>
    <td align="center">
      <img src="https://github.com/yunusozcan.png" width="60px" /><br />
      <sub>
        <a href="https://github.com/yunusozcan">yunusozcan</a>
      </sub>
    </td>
    <td align="center">
      <img src="https://github.com/emreonursoy.png" width="60px" /><br />
      <sub>
        <a href="https://github.com/emreonursoy">emreonursoy</a>
      </sub>
    </td>
    <td align="center">
      <img src="https://github.com/kaganAhmetOkan.png" width="60px" /><br />
      <sub>
        <a href="https://github.com/kaganAhmetOkan">kaganAhmetOkan</a>
      </sub>
    </td>
    <td align="center">
      <img src="https://github.com/ezgiergun.png" width="60px" /><br />
      <sub>
        <a href="https://github.com/ezgiergun">ezgiergun</a>
      </sub>
    </td>
  </tr>
</table>