open-index/open-npm huggingface dataset:
npm package: @jujubes/ui-react
Description: Jujubes UI - React
Author: Eivind Eriksen
Latest version: 1.3.5

# Jujubes UI

Jujubes is dependency biased admin UI component library in React.
## Usage
 
Install the dependency:

`npm install jujubes-ui-react`

Install required peer dependencies if not already in your project: 

`npm install react react-dom react-router-dom`

Import the CSS file somewhere high up in your component hierarchy:

`import "jujubes-ui-react/dist/styles.css"`

Import components at will:

`import { Button } from "jujubes-ui-react"`


## Documentation

https://jujubes-ui-react.netlify.app

## Development

Create a new component guide: 

`sh new-component.sh`

Remember to export the component in the category folders `index.js` file.

Run the storybook while you develop:

`npm start`

## Collaboration

Pull requests are welcome.



## Changelog

### [1.3.3] - 2021-12-06
#### Changes
- `<Button>`: Changed to `display: inline-flex`.
- `<NavButton>`: `link` is now replacing current route.

### [1.3.0] - 2021-12-02
#### Breaking changes
- `<PageCrumbs|Crumb>`: Has been deprecated in favor of dynamic crumbs with `<Breadcrumb>` and `<BreadcrumbTrail>`.
#### New
- Added a `soft` theme. and added more css-variables.

### [1.2.3] - 2021-11-26
#### New
- `<PageLoader>`: Used to display a loader before content is loaded.
#### Breaking changes
- `<Page>`: Removed `loading` property. Use `<PageLoader>` to display loading content.
- `<PageActions>`: Label is now moved from `children` to `label` on `<Action>`. `children` is now reserved for actions with content. `<PageActions>` on desktop will create a dedicated column. Added `title` on `<PageActions>` which determined the title of the action-card on desktop. 
#### Changes
- `<PopOver>`: Better positiong logic.
- `<Icon>`: `plus-big` icon removed. `plus-small` is now same size as `plus` was.
  
  
### [1.2.1] - 2021-11-24
#### Changes
- `<MarkupEditor>`: Fixed position. More agile.
- `<PopupTitle>`: Changed colors.
- `<Col>`: `align` also works with `span`.

### [1.2.0] - 2021-11-23
#### New
- `<MarkupEditor>`: Added markup editor.

### [1.1.0] - 2021-11-09
#### Changes
- Added chunks of libs as "image_editor", "emojis" and "dates".

### [1.0.29] - 2021-11-09
#### Image editor
- `<ImageEditor />`: Edit images.

### [1.0.27] - 2021-11-09
#### Changes
- `<Button />`: Added `symbol` and `pill` properties.
npm package: @jujulego/jill
Description: [![Version](https://img.shields.io/npm/v/@jujulego/jill)](https://www.npmjs.com/package/@jujulego/jill) ![Licence](https://img.shields.io/github/license/jujulego/jill) ![Language](https://img.shields.io/github/languages/top/jujulego/jill) [![codecov](http
Latest version: 3.0.9

# @jujulego/jill
[![Version](https://img.shields.io/npm/v/@jujulego/jill)](https://www.npmjs.com/package/@jujulego/jill)
![Licence](https://img.shields.io/github/license/jujulego/jill)
![Language](https://img.shields.io/github/languages/top/jujulego/jill)
[![codecov](https://codecov.io/gh/Jujulego/jill/graph/badge.svg?token=Ug8TWPaPNA)](https://codecov.io/gh/Jujulego/jill)

Zero-config monorepo cli

## Description
Jill uses the `workspaces` attribute of your root package.json manifest to build your workspaces dependency tree.
That done it can offer you various utilities:
- `jill list` prints a list of all your workspaces, with many useful filters
- `jill run` Run a task expression in a workspace, after having built all its dependencies.
- `jill group` Deprecated in favor of run
- `jill each` Run a task expression in many workspace, after having built all theirs dependencies.
- `jill tree` prints current workspace's local dependency tree

It supports both `npm` and `yarn`.

### Hook scripts
Jill will run hook script like npm do, for both npm and yarn. As npm, when you type `jill run test`, it will first run
`pretest` if it exists, then `test` and finally `posttest`.

This feature can be disabled using the `--no-hooks` option: `jill run --no-hooks test`.

#### Task expression syntax
Allows to instruct multiple tasks with the given orchestration. The orchestration is given by the following operators:
- `&&` in sequence
- `||` fallbacks
- `//` in parallel

##### Examples:
- This will run scripts **taskA**, **taskB** and **taskC** in order, one after another.
  ```shell
  jill run 'taskA && taskB && taskC'
  ```

- This will run first **taskA**, if it fails it will run **taskB**, then **taskC** in order, until one succeed.
  ```shell
  jill run 'taskA || taskB || taskC'
  ```

- This will run scripts **taskA**, **taskB** and **taskC** in parallel.
  ```shell
  jill run 'taskA // taskB // taskC'
  ```

- And you can create more complex flows: this will run **taskA** and **taskB** in parallel, and then **taskC** when both tasks are ended
  ```shell
  jill run '(taskA // taskB) && taskC'
  ```

## Installation
Just install jill as a dev dependency:
```shell
npm install --save-dev @jujulego/jill
```

Or if you're using yarn
```shell
yarn add --dev @jujulego/jill
```

## Configuration
Almost nothing ;)

To work, jill only needs the `workspaces` attribute (see [npm workspaces](https://docs.npmjs.com/cli/v8/using-npm/workspaces) or [yarn workspace](https://yarnpkg.com/features/workspaces)).

To build a workspaces, jill will try to run it's `build` script. If no `build` script is found, jill will just warn and continue.
npm package: @jujulego/library-tpl
Description: [![version](https://img.shields.io/npm/v/@jujulego/library-tpl)](https://www.npmjs.com/package/@jujulego/library-tpl) ![licence](https://img.shields.io/github/license/jujulego/library-tpl) [![codecov](https://codecov.io/gh/Jujulego/library-tpl/graph/badge
Author: Julien Capellari
Latest version: 0.0.1

# @jujulego/library-tpl
[![version](https://img.shields.io/npm/v/@jujulego/library-tpl)](https://www.npmjs.com/package/@jujulego/library-tpl)
![licence](https://img.shields.io/github/license/jujulego/library-tpl)
[![codecov](https://codecov.io/gh/Jujulego/library-tpl/graph/badge.svg?token=d8GCA59frs)](https://codecov.io/gh/Jujulego/library-tpl)

Just my library template!
npm package: @jujulego/nx-typeorm-plugin
Description: ![License](https://img.shields.io/github/license/jujulego/nx-typeorm-plugin) [![Version](https://img.shields.io/npm/v/@jujulego/nx-typeorm-plugin)](https://www.npmjs.com/package/@jujulego/nx-typeorm-plugin)
Latest version: 1.0.0-alpha.7

# nx-typeorm-plugin
![License](https://img.shields.io/github/license/jujulego/nx-typeorm-plugin)
[![Version](https://img.shields.io/npm/v/@jujulego/nx-typeorm-plugin)](https://www.npmjs.com/package/@jujulego/nx-typeorm-plugin)

Plugin for [Nx](https://nx.dev) mono-repositories. Helps to use [Typeorm](https://www.npmjs.com/package/typeorm) inside an app.

## Setup
Before using this plugin you must setup Typeorm with an `ormconfig.json` file at the root of your app.

All you need to use this plugin is to install it:
- `npm install --save-dev @jujulego/nx-typeorm-plugin`
- `yarn add --dev @jujulego/nx-typeorm-plugin`

## Generators
### migration
It will generate a new migration.

Use: `nx g @jujulego/nx-typeorm-plugin:migration`

#### Options
| name     | default            | description
|----------|--------------------|------------------------
| name     | __required__       | Name of the migration to generate
| project  | nx default project | Nx project where the migration should be generated
| database | `default`          | Database connection to use (as in the `ormconfig.json`)

## Executors
### db-create
It will create the database inside your database server.

Add the target _db-create_ to your project's config in your `workspace.json`:
```json
{
  "projects": {
    "example": {
      "targets": {
        "db-create": {
          "executor": "@jujulego/nx-typeorm-plugin:db-create"
        }
      }
    }
  }
}
```

__Warning only `postgresql` and `mysql` databases are supported.__

#### Options
| name     | default   | description
|----------|-----------|------------------------
| database | `default` | Database connection to use (as in the `ormconfig.json`)

### db-migrate
It will apply typeorm migrations to a database.

Add the target _db-migrate_ to your project's config in your `workspace.json`:
```json
{
  "projects": {
    "example": {
      "targets": {
        "db-migrate": {
          "executor": "@jujulego/nx-typeorm-plugin:db-migrate"
        }
      }
    }
  }
}
```

#### Options
| name     | default   | description
|----------|-----------|------------------------
| database | `default` | Database connection to use (as in the `ormconfig.json`)

## Running unit tests

Run `nx test nx-typeorm-plugin` to execute the unit tests via [Jest](https://jestjs.io).
npm package: @jujulego/pid-file
Description: A simple pidfile utility.
Author: Julien Capellari
Latest version: 2.2.2

# @jujulego/pid-file
[![version](https://img.shields.io/npm/v/@jujulego/pid-file)](https://www.npmjs.com/package/@jujulego/pid-file)
![licence](https://img.shields.io/github/license/jujulego/pid-file)
[![codecov](https://codecov.io/gh/Jujulego/pid-file/graph/badge.svg?token=d8GCA59frs)](https://codecov.io/gh/Jujulego/pid-file)

A simple pidfile utility. A pidfile holds the current pid of the process running your server.
It can be used to detect if your process is already running, and interact with it using signals.

# Installation
```shell
yarn add @jujulego/pid-file
```

# Design
First `pid-file` will try to create the pidfile with the `wx` [filesystem flag](https://nodejs.org/docs/latest-v14.x/api/fs.html#fs_file_system_flags).
If the operation succeed, the pidfile didn't exist before, and this process now owns it.

If the file creation failed it means that the pidfile already existed, `pid-file` will check if the process owning the pidfile is still running.
If the other process still runs the creation fails, else `pid-file` will update the pidfile with it's own pid.
While `pid-file` tries to update the pidfile, this one is locked using [`proper-lockfile`](https://www.npmjs.com/package/proper-lockfile)
to ensure no other process also try to update it.

# Usage
## Example
Nothing beats an example:
```typescript
import { PidFile } from '@jujulego/pid-file';

const pidfile = new PidFile('.example.pid');

if (!await pidfile.create()) {
  console.warn('Failed to create .example.pid');
  process.exit(1);
}

// Do your job ;)

// When every thing is finished you should delete the pidfile:
await pidfile.delete();
```
npm package: @jujulego/vite-plugin-swc
Description: A simple plugin to use swc with Vite
Author: Julien Capellari
Latest version: 1.2.1

# vite-plugin-swc
[![Version](https://img.shields.io/npm/v/@jujulego/vite-plugin-swc)](https://www.npmjs.com/package/@jujulego/vite-plugin-swc)
![Licence](https://img.shields.io/github/license/jujulego/vite-plugin-swc)
![Language](https://img.shields.io/github/languages/top/jujulego/vite-plugin-swc)
[![codecov](https://codecov.io/gh/Jujulego/vite-plugin-swc/graph/badge.svg?token=HSmwH9DDx3)](https://codecov.io/gh/Jujulego/vite-plugin-swc)

A simple plugin to use swc with Vite
npm package: @jukanntenn/glm-plan-usage
Description: GLM Plan Usage - StatusLine plugin for Claude Code
Author: Alice
Latest version: 0.0.3

# @jukanntenn/glm-plan-usage

GLM Plan Usage - StatusLine plugin for Claude Code

## Installation

```bash
npm install -g @jukanntenn/glm-plan-usage
```

For users experiencing network issues, use npm mirror for faster installation:

```bash
npm install -g @jukanntenn/glm-plan-usage --registry https://registry.npmmirror.com
```

## Features

- 📊 **Monitor**: Display GLM (ZHIPU/ZAI) coding plan usage statistics
- 🌍 **Cross-platform**: Works on Windows, macOS, and Linux
- 📦 **Easy installation**: One command via npm
- 🎨 **Beautiful**: Color-coded warning levels based on usage percentage

## Usage

Add to your Claude Code `settings.json`:

**Linux/macOS:**

```json
{
  "statusLine": {
    "type": "command",
    "command": "~/.claude/glm-plan-usage/glm-plan-usage",
    "padding": 0
  }
}
```

**Windows:**

```json
{
  "statusLine": {
    "type": "command",
    "command": "%USERPROFILE%\\.claude\\glm-plan-usage\\glm-plan-usage.exe",
    "padding": 0
  }
}
```

## Environment Variables

**Note:** These variables are typically already configured in your Claude Code `settings.json`. If not, you can set them manually:

**Linux/macOS:**

```bash
export ANTHROPIC_AUTH_TOKEN="your-token-here"
export ANTHROPIC_BASE_URL="https://open.bigmodel.cn/api/anthropic"
```

**Windows (Command Prompt):**

```cmd
set ANTHROPIC_AUTH_TOKEN=your-token-here
set ANTHROPIC_BASE_URL=https://open.bigmodel.cn/api/anthropic
```

**Windows (PowerShell):**

```powershell
$env:ANTHROPIC_AUTH_TOKEN="your-token-here"
$env:ANTHROPIC_BASE_URL="https://open.bigmodel.cn/api/anthropic"
```

## More Information

- GitHub: https://github.com/jukanntenn/glm-plan-usage
- Issues: https://github.com/jukanntenn/glm-plan-usage/issues
- License: MIT
npm package: @jukben/emoji-search
Description: Retrieve emojis based on the search term.
Author: Jakub Benes
Latest version: 3.0.0

# @jukben/emoji-search

Exposes search function which returns arrays of related emojis: 

```javascript 
type Emoji = {
    category: string
    char: string,
    fitzpatrick_scale: boolean
    keywords: Array<string>,
    name: string,
}

(string) => Array<Emoji>
```

Based on [emojilib](https://github.com/muan/emojilib) and wonderful [match-sorter](https://github.com/kentcdodds/match-sorter).

## Install

`npm i --save-dev @jukben/emoji-search`
## Usage

```javascript
import search from "@jukben/emoji-search"

search("beer") // [{"keywords":["beer", "relax","beverage","drink","drunk","party","pub","summer","alcohol","booze"],"char":"🍺","fitzpatrick_scale":false,"category":"food_and_drink", name: "beer"},{"keywords":["beers", "relax","beverage","drink","drunk","party","pub","summer","alcohol","booze"],"char":"🍻","fitzpatrick_scale":false,"category":"food_and_drink", name: beers"},{"keywords":["milk_glass", "beverage","drink","cow"],"char":"🥛","fitzpatrick_scale":false,"category":"food_and_drink", name: "milk_glass"},...

search("beer")[0].char // 🍺
```
## License

<img src="https://media.giphy.com/media/AuIvUrZpzBl04/giphy.gif" width="500">

MIT
npm package: @jukben/eslint-config
Description: My personal, opinionated ESlint config
Author: Jakub Benes
Latest version: 0.0.6

# @jukben/eslint-config

This is my opinionated configuration for ESLint.

Based on Airbnb's configuration. Enhanced with Prettier, ready for React and Jest.

## Install

    yarn add eslint @jukben/eslint-config -D

## Usage

.eslintrc

```js
{
    "extends": "@jukben"
}
```

## Customization

It's simple as...

```js
{
    "extends": "@jukben",
    "rules": {
        "prefer-destructuring": 0
    }
}
```

## Possible issues

If you get some error coming from eslint it could be because you might have version mismatch among your dependencies.

For example if you are using CRA version 1.1.4 you'll get issue with `Definition for rule 'jsx-a11y/label-has-associated-control' was not found`. That's because CRA is using old version of eslint-plugin-jsx-a11y. If you are using Yarn you can easily enforce the correct one.

```js
  "resolutions": {
    "eslint-plugin-jsx-a11y": "6.1.1"
  }
```
npm package: @jukben/tslint-config
Description: My personal, opinionated TSlint config
Author: Jakub Benes
Latest version: 0.0.2

# @jukben/tslint-config

This is my opinionated configuration for TSLint.

## Install

    yarn add eslint @jukben/tslint-config -D

## Usage

tslint.json

```js
{
    "extends": "@jukben/tslint-config"
}
```
npm package: @jukben/unicode
Description: Safe work with unicode strings with emoji chars up to *Emoji 5.0* (Unicode 10.0)
Author: Jakub Benes
Latest version: 1.0.0

# @jukben/unicode

![Codecov](https://codecov.io/gh/jukben/unicode/branch/master/graph/badge.svg)

Safe work with unicode strings with emoji chars up to _Emoji 5.0_ (Unicode 10.0)

## Install

`npm i --save-dev @jukben/unicode`

## Usage

```javascript
import unicode from "@jukben/unicode";

`console.log(unicode("hello ✌🏻").reverse()); // ✌🏻 olleh`;
```

### API

### `unicode(string: text)`

#### `.reverse()`

returns correctly reversed string

`console.log(unicode("hello ✌🏻").reverse()); // ✌🏻 olleh`

#### `.length`

returns correct length

`console.log(unicode("hello ✌🏻").length); // 6`

#### `.charAt(index: number)`

returns character at the index or undefined

`console.log(unicode("hello ✌🏻").charAt(6)); // ✌🏻`

#### `.hexCodeAt(index: number)`

returns hax code at the index or undefined

`console.log(unicode("hello ✌🏻").hexCodeAt(6)); // 270c-1f3fb`

#### `.chars`

returns arrays of chars

`console.log(unicode("hello ✌🏻").chars); // ["h", "e", "l", "l", "o", " ", "✌🏻"]`

## License

<img src="https://media.giphy.com/media/AuIvUrZpzBl04/giphy.gif" width="500">

MIT
npm package: @jukeplus/api-spec
Description: - [员工端](http://docs.dev.juke.plus/activity/staff.html)
Latest version: 0.0.453

# 文档地址

- [员工端](http://docs.dev.juke.plus/activity/staff.html)

- [活动端](http://docs.dev.juke.plus/activity/yun.html)

- [控制台](http://docs.dev.juke.plus/activity/console.html)

# 这是什么？

这是零售帮项目的 API Specification，它使用 OpenAPI 来描述一个 api 的 url，请求体，请求头，返回头，返回体等。有了这个描述文件，就可以 mock 数据，生成代码，或者用来做 数据校验，测试等等。

for more detail: [https://swagger.io/specification/](https://swagger.io/specification/)

# 部署文档和包

## 生成文档

文档是给前后端开发看的，生成文档依赖 redoc-cli，首先安装 redoc-cli：

```
npm i redoc-cli -g
```

之后生成并且部署文档到 dev 服务器，请先测试 dev 服务器能否正常登陆，如果不行请添加 ssh 公钥或者更改部署地址。

```
ssh root@116.62.123.161
```

登录成功后运行：

```
npm run deploy
```

## 发布版本

npm 包，是用来生成代码以及 mock 数据的

要发包，请先确保你已经登录 npm，运行

```
npm login
```

再确认你有发包的权限，如果没有请让管理员邀请你加入 npm 的@jukeplus 组织

最后运行

```
npm run pub
```

# 为什么？

其实 API Specification 是个比较重要的东西，api 是项目的桥梁，所以保持一致性能够避免很多问题。

何为一致性？例如，你写了一份文档，前端照着文档写了代码，后端照着文档写了代码，测试测 api 时照着文档又写了一份代码。

这样，三个人有一份文档三份代码，他们都是靠人来维持一致，人会出错， 所以会出现下面的情况：

- 后端改代码，没有改文档，没有通知前端和测试，忘了。
- 或者改了文档，代码还没上。
- 或者代码和文档没对上，字段名手残写错了。

如何避免这个问题：`文档即代码`。以前有`代码即文档`，根据代码去生成文档。但那样并不好，只是解决了不用写文档的问题。这个问题，前端、后端、测试，其实是需要一个协议（Specification）来统一规范，生成代码，用这个 Spec 来描述你的 api，然后用它来生成可读文档或者代码或者 mock 数据。这样即使手残写错，也能错得一致，运行时不会出问题。

# 工具

- 如果你需要使用 postman 进行测试，那么也很简单。[点此查看方法](https://learning.getpostman.com/docs/postman/collections/working_with_openAPI/)

- 如果你想用这些 specs 来生成请求代码，有 [openapi-generator](https://openapi-generator.tech/)

- 如果你想用 specs 来生成 mock 数据，有[prism](https://github.com/stoplightio/prism)
npm package: @jukeplus/frontend-shared
Description: 零售帮项目前端代码共享库，使用 npm 进行版本管理
Latest version: 1.0.231

# frontend-shared

零售帮项目前端代码共享库，使用 npm 进行版本管理

# 发布

```
npm run pub
```

# 目录结构

```
.
├── README.md
├── api 通用api错误和http工具
│   ├── errors.ts
│   └── util.ts
├── components 共享组件
│   ├── fission-poster.tsx
│   ├── full-screen-tips.tsx
│   ├── icon.tsx
│   ├── input.tsx
│   ├── live-poster.tsx
│   ├── loading.tsx
│   ├── money-input.tsx
│   ├── number-input.tsx
│   ├── poster-loader.tsx
│   ├── qrcode.tsx
│   ├── redirect-landing.tsx
│   ├── remote-scroll-view.tsx
│   ├── retry.tsx
│   ├── scroll-view.tsx
│   ├── wx-open-launch-weapp.tsx
│   └── wx-open-subscribe.tsx
├── global.d.ts 全局定义
├── hooks 通用hooks
│   ├── use-async-task.ts
│   ├── use-callback-state.ts
│   ├── use-data.ts
│   ├── use-submission.ts
│   └── use-title.ts
├── package-lock.json
├── package.json
└── utils 通用工具集
    ├── common.ts
    ├── datetime.ts
    ├── interface.ts
    ├── money.ts
    ├── number.ts
    ├── payment.ts
    ├── render.ts
    ├── routes.ts
    ├── url.ts
    └── wx.ts
```
npm package: @jukeplus/shop-shared
Description: 前端共享文件库
Latest version: 0.0.492

# shop-shared

前端共享文件库

## 使用

```
npm i @jukeplus/shop-shared@version -S
```

## 部署文档和包

### 生成文档

文档是给前后端开发看的，生成文档依赖 redoc-cli，首先安装 redoc-cli：

```
npm i redoc-cli -g
```

之后生成并且部署文档到 dev 服务器，请先测试 dev 服务器能否正常登陆，如果不行请添加 ssh 公钥或者更改部署地址。

```
ssh root@116.62.123.161
```

登录成功后运行：

```
npm run deploy
```

### 发布版本

npm 包，是用来生成代码以及 mock 数据的

要发包，请先确保你已经登录 npm，运行

```
npm login
```

再确认你有发包的权限，如果没有请让管理员邀请你加入 npm 的@jukeplus 组织

最后运行

```
npm run pub
```

## 编写文档

[api-spec](./api-sepc)是项目的 API Specification，它使用 OpenAPI 来描述一个 api 的 url，请求体，请求头，返回头，返回体等。有了这个描述文件，就可以 mock 数据，生成代码，或者用来做 数据校验，测试等等。

for more detail: [https://swagger.io/specification/](https://swagger.io/specification/)

## 文档地址

- [商城端](http://docs.dev.juke.plus/shop/shop.html)

- [商户端](http://docs.dev.juke.plus/shop/merchant.html)

- [员工端](http://docs.dev.juke.plus/shop/staff.html)
npm package: @jukhan/zaitun
Description: javascript framework
Author: jasim uddin khan
Latest version: 1.0.0

zaitun
=========

A small library that adds commas to numbers

## Installation

  `npm install @jdaudier/number-formatter`

## Usage

    var numFormatter = require('@jdaudier/number-formatter');

    var formattedNum = numFormatter(35666);
  
  
  Output should be `35,666`


## Tests

  `npm test`

## Contributing

In lieu of a formal style guide, take care to maintain the existing
coding style. Add unit tests for any new or changed functionality.
Lint and test your code.
npm package: @jukka/react-scripts
Description: Configuration and scripts for Create React App with support for styled-components and React Hot Loader
Latest version: 1.1.2

# @jukka/react-scripts

Forked from [Create React App](https://github.com/facebookincubator/create-react-app).

This version adds support for the following features:
- babel-plugin-styled-components
- react-hot-loader

## Styled components

Installing `styled-components` in a standard Create React App project will work but debugging is painful without the Webpack plugin.

* Without `babel-plugin-styled-components`, classnames are total gibberish:
![Before adding babel-plugin-styled-components](images/styled-components-before.png)

* With `babel-plugin-styled-components`, they become human readable:
![After adding babel-plugin-styled-components](images/styled-components-after.png)
npm package: @jules-tnk/ts-http-mcp
Description: MCP server for sending HTTP requests
Author: Jules TnK
Latest version: 1.0.0

# HTTP MCP Server

A Model Context Protocol (MCP) server that enables AI agents to send HTTP requests to any endpoint with full control over methods, headers, query parameters, and request bodies.

**Note**: This MCP server only supports stdio transport.

# MCP Badge from LobeHub

[![MCP Badge](https://lobehub.com/badge/mcp-full/jules-tnk-ts-http-mcp?theme=light)](https://lobehub.com/mcp/jules-tnk-ts-http-mcp)

# Table of Contents

- [Features](#features)
- [Installation](#installation)
- [Configuration](#configuration)
- [Local Development](#local-development)
  - [Install](#install)
  - [Build](#build)
  - [Run](#run)

# Features

- Support for all major HTTP methods (`GET`, `POST`, `PUT`, `PATCH`, `DELETE`)
- Custom headers configuration
- Query parameter handling with proper URL encoding
- Request body support for POST/PUT/PATCH
- Comprehensive error handling
- TypeScript with strict type safety
- Clean, modular architecture
- STDIO transport support for seamless integration with MCP clients

# Installation

Install the package globally using npm:

```bash
npm install -g @jules-tnk/ts-http-mcp
```

Or use npx to run it directly:

```bash
npx @jules-tnk/ts-http-mcp
```

# Configuration

## Claude Desktop

Add the following configuration to your Claude Desktop config file (`claude_desktop_config.json`):

**Windows**: `%APPDATA%\Claude\claude_desktop_config.json`
**macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`
**Linux**: `~/.config/claude/claude_desktop_config.json`

```json
{
	"mcpServers": {
		"http-mcp": {
			"command": "npx",
			"args": ["@jules-tnk/ts-http-mcp"]
		}
	}
}
```

After updating the configuration, restart Claude Desktop to load the MCP server.

## Other MCP Clients

For other MCP clients that support stdio transport, configure them to run:

```bash
npx @jules-tnk/ts-http-mcp
```

# Local Development

## Install

```bash
pnpm install
```

## Build

```bash
pnpm build
```

## Run

```bash
pnpm start
```

## Testing

To test the MCP server locally, you can run it directly and interact with it through stdio:

```bash
pnpm start
```

The server will start and listen for MCP protocol messages on stdin/stdout.

# Usage

Once configured with your MCP client, the HTTP MCP server provides the following capabilities:

- **GET requests**: Retrieve data from any HTTP endpoint
- **POST requests**: Send data to endpoints that accept POST requests
- **PUT/PATCH requests**: Update resources on remote servers
- **DELETE requests**: Remove resources from remote servers
- **Custom headers**: Add authentication, content-type, and other headers
- **Query parameters**: Include URL parameters with proper encoding
- **Request bodies**: Send JSON, form data, or raw content

The server handles all the HTTP communication details, error handling, and response processing, making it easy for AI agents to interact with web APIs and services.

# License

MIT License - see the [LICENSE.md](LICENSE.md) file for details.
npm package: @jules.sk/data-motion
Description: Library port of AOS
Author: Jules Superkraft
Latest version: 0.2.8

# DataMotion
[![NPM version](https://img.shields.io/npm/v/@jules.sk/data-motion)](https://www.npmjs.com/package/@jules.sk/data-motion)

# ⚙ Usage

## Install
Install `@jules.sk/data-motion` package:
* `npm install @jules.sk/data-motion`

Import script, styles and initialize:
```js
import { init } from '@jules.sk/data-motion';
import '@jules.sk/data-motion/dist/data-motion.css'; // You can also use <link> for styles
// ..
init();
```

## Directives
* `[data-motion=fade-up]`
* `[data-motion=fade-down]`
* `[data-motion-delay]` - 0, 50, 100, 150 ... 3000
* `[data-motion-duration]` - 0, 50, 100, 150 ... 3000