open-index/open-npm huggingface dataset:
npm package: @jyorg/relation-graph
Description: 井颐关系图谱插件
Author: Youzhi Wang
Latest version: 0.1.9

# @jyorg/relation-graph
基于百度 echarts 的关系图谱组件

## 安装
```
npm i @jyorg/relation-graph
```

## 属性
| 属性 | 说明 | 类型 | 默认值 | 可选值 |
| :--- | :--- | :--- | :--- | :--- | 
| categories | 节点分类的类目 | Array | - | - |
| data | 关系图的节点数据列表 | Array | - | - |
| links | 节点间的关系数据 | Array | - | - |
| config | [需要覆盖的配置文件](https://echarts.apache.org/zh/option.html#title) | Object | - | - |
| theme | 使用的配色主题 | Sting | shine | shine/macarons |
| node-click | 节点点击事件 | Function(data: Object) | - | - |

## 案例
```javascript
import Vue from 'vue'
import RelationGraph from '@jyorg/relation-graph'

Vue.use(RelationGraph)
```
```html
// 需要给父组件的父容器指定宽和高
<relation-graph :categories="categories"
                :data="data"
                :links="links"
                :node-click="handleNodeClick"/>
```
npm package: @jyostudio/components
Description: components
Author: nivk
Latest version: 0.0.4

# @jyostudio/components

组件库

## 引用

浏览器  

请使用 Chrome 134 或 Edge 134 及以上版本。  
不支持 Firefox 或 Safari，除非他们N年后（极有可能是3年后）支持了异步、同步显示资源释放标准。  

```HTML
<script type="importmap">
  {
    "imports": {
      "@jyostudio/components": "https://esm.sh/@jyostudio/components"
    }
  }
</script>
```

暂不支持 SSR。  

我们已经移除了所有的完全视障无障碍措施，用以减少需要维护的代码和逻辑。  

因为这个 UI 组件库并不是为完全视障人士准备的，相关措施也没有达到我们想要的效果。  

我们将考虑后续推出为完全视障人士专门定制的框架。  

但我们保留了色障、光障相应应对措施的代码。  

## 许可证

MIT License

Copyright (c) 2025 nivk

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

另外：部分代码取自 fluentui 项目，其中内容并不适用于本项目主许可证，请参阅相关源码中的许可证信息。
npm package: @jyostudio/geometry
Description: geometry
Author: nivk
Latest version: 0.1.5

# @jyostudio/geometry

一个功能丰富的 TypeScript 几何运算库，提供了常用的数学和几何类，适用于图形学、游戏开发等场景。

## 特性

本库包含以下主要模块：

*   **基础向量与矩阵**: `Vector2`, `Vector3`, `Vector4`, `Matrix`, `Quaternion`
*   **几何图元**: `Point`, `Rectangle`, `Plane`, `Ray`
*   **包围体**: `BoundingBox`, `BoundingSphere`, `BoundingFrustum`
*   **曲线**: `Curve`, `CubicBezier`
*   **辅助工具**: `MathHelper`

## 安装

### 浏览器 (ES Modules)

```html
<script type="importmap">
  {
    "imports": {
      "@jyostudio/geometry": "https://unpkg.com/@jyostudio/geometry"
    }
  }
</script>
```

### Node.js

```bash
npm install @jyostudio/geometry
```

根据环境引用后，用法完全一致，不需要在使用时区分引用地址和方式。

## 示例

```typescript
import { Vector3, Matrix } from "@jyostudio/geometry";

// 向量运算
const v1 = new Vector3(1, 2, 3);
const v2 = new Vector3(4, 5, 6);
const v3 = Vector3.add(v1, v2); // Vector3(5, 7, 9)

// 矩阵变换
const position = new Vector3(10, 0, 0);
const matrix = Matrix.createRotationY(Math.PI / 2);
const transformed = Vector3.transform(position, matrix);
```

## 文档

本库使用 TypeScript 编写，包含完整的类型定义和 JSDoc 注释。在使用支持 TypeScript 的编辑器（如 VS Code）时，可以获得完善的代码提示。

## 许可证

MIT License

Copyright (c) 2025 nivk

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
npm package: @jyostudio/markdown
Description: A markdown parser and renderer.
Author: nivk
Latest version: 0.0.2

# @jyostudio/markdown

组件库

## 引用

浏览器  

```HTML
<script type="importmap">
  {
    "imports": {
      "@jyostudio/markdown": "https://esm.sh/@jyostudio/markdown"
    }
  }
</script>
```

## 许可证

MIT License

Copyright (c) 2025 nivk

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
npm package: @jyotirmay/calendar
Description: ### Installation
Latest version: 0.0.36

### Headless calendar api

### Installation

```bash
npm install @jyotirmay/calendar
```

### Usage

```js
import { Calendar } from "@jyotirmay/calendar";

const cal = new Calendar({ startDay: "monday" })
console.log(cal.getWeekNumber(new Date('2024-01-25'))); // Out: 4
console.log(JSON.stringify(cal.generateMonth({ month: "january", year: 2024 })));

/*
OUTPUT:

{
  "weeks": {
    "1": [
      { "day": "monday", "date": 1, "month": "january", "year": 2024 },
      { "day": "tuesday", "date": 2, "month": "january", "year": 2024 },
      { "day": "wednesday", "date": 3, "month": "january", "year": 2024 },
      { "day": "thursday", "date": 4, "month": "january", "year": 2024 },
      { "day": "friday", "date": 5, "month": "january", "year": 2024 },
      { "day": "saturday", "date": 6, "month": "january", "year": 2024 },
      { "day": "sunday", "date": 7, "month": "january", "year": 2024 }
    ],
    "2": [
      { "day": "monday", "date": 8, "month": "january", "year": 2024 },
      { "day": "tuesday", "date": 9, "month": "january", "year": 2024 },
      { "day": "wednesday", "date": 10, "month": "january", "year": 2024 },
      { "day": "thursday", "date": 11, "month": "january", "year": 2024 },
      { "day": "friday", "date": 12, "month": "january", "year": 2024 },
      { "day": "saturday", "date": 13, "month": "january", "year": 2024 },
      { "day": "sunday", "date": 14, "month": "january", "year": 2024 }
    ],
    "3": [
      { "day": "monday", "date": 15, "month": "january", "year": 2024 },
      { "day": "tuesday", "date": 16, "month": "january", "year": 2024 },
      { "day": "wednesday", "date": 17, "month": "january", "year": 2024 },
      { "day": "thursday", "date": 18, "month": "january", "year": 2024 },
      { "day": "friday", "date": 19, "month": "january", "year": 2024 },
      { "day": "saturday", "date": 20, "month": "january", "year": 2024 },
      { "day": "sunday", "date": 21, "month": "january", "year": 2024 }
    ],
    "4": [
      { "day": "monday", "date": 22, "month": "january", "year": 2024 },
      { "day": "tuesday", "date": 23, "month": "january", "year": 2024 },
      { "day": "wednesday", "date": 24, "month": "january", "year": 2024 },
      { "day": "thursday", "date": 25, "month": "january", "year": 2024 },
      { "day": "friday", "date": 26, "month": "january", "year": 2024 },
      { "day": "saturday", "date": 27, "month": "january", "year": 2024 },
      { "day": "sunday", "date": 28, "month": "january", "year": 2024 }
    ],
    "5": [
      { "day": "monday", "date": 29, "month": "january", "year": 2024 },
      { "day": "tuesday", "date": 30, "month": "january", "year": 2024 },
      { "day": "wednesday", "date": 31, "month": "january", "year": 2024 },
      { "day": "thursday", "date": 1, "month": "february", "year": 2024 },
      { "day": "friday", "date": 2, "month": "february", "year": 2024 },
      { "day": "saturday", "date": 3, "month": "february", "year": 2024 },
      { "day": "sunday", "date": 4, "month": "february", "year": 2024 }
    ]
  }
}

*/

```
npm package: @jyotirmay/tailwind-class-validator
Description: It validates whether a string (single / multiple separated by spaces) is a valid tailwind css class or not.
Author: Jyotirmay Barman
Latest version: 0.0.3

It validates whether a string (single / multiple separated by spaces) is a valid tailwind css class or not.

### Installation

```bash
npm install @jyotirmay/tailwind-class-validator
```

### Usage

```js
// index.ts
import { isValidTailwindClass } from'@jyotirmay/tailwind-class-validator';

(async ()=>{
    let res = await isValidTailwindClass("text-red-500", { /** Options */ })
    console.log(res);
    /*
        Output: 
        {
            success: true,
            css: '.cls {\n' +
            '    --tw-text-opacity: 1;\n' +
            '    color: rgb(239 68 68 / var(--tw-text-opacity))\n' +
            '}'
        }
    */

    // With options

    let opts = { 
        plugins:{ 
            typography: true // For tailwind-typography support
        }, 
        outputClass: "out" // to modify classname in `res.css`. The default is "cls" 
    }

    res = await isValidTailwindClass("text-red-500", opts)
    console.log(res);
    /*
        Output: 
        {
            success: true,
            css: '.out {\n' +
            '    --tw-text-opacity: 1;\n' +
            '    color: rgb(239 68 68 / var(--tw-text-opacity))\n' +
            '}'
        }
    */
})()

```
npm package: @jyotirmay/tailwind-to-css
Description: Convert tailwind css to vanilla css
Author: Jyotirmay Barman
Latest version: 0.0.3

Convert tailwind css to vanilla css

### Installation
```bash
npm install @jyotirmay/tailwind-to-css
```

### usage
```js
import { convert } from "@jyotirmay/tailwind-to-css";

let html = `
    <div class="text-gray-500 dark:bg-red-500 my-container">
        <p class="inline">Hello world</p>
    </div> 
`;

(async()=>{
    const res = await convert(html)
    console.log(res)

    /**
    Output:
        {
            html: 
            `
                <html>
                <head>
                    <link rel="stylesheet" href="./output.css" />
                </head>
                <body>
                    <div class="VzxbQ9x92_use1WNuDg0y my-container">
                    <p class="AeplxTuJZjGFMK173hyC9">Hello world</p>
                    </div>
                </body>
                </html>
            `,
            css: 
            `
                .VzxbQ9x92_use1WNuDg0y {
                    --tw-text-opacity: 1;
                    color: rgb(107 114 128 / var(--tw-text-opacity));
                }
                :is(.dark .VzxbQ9x92_use1WNuDg0y) {
                    --tw-bg-opacity: 1;
                    background-color: rgb(239 68 68 / var(--tw-bg-opacity));
                }
                .AeplxTuJZjGFMK173hyC9 {
                    display: inline;
                }
            `
        }
     */
})()


```