open-index/open-npm huggingface dataset:
npm package: @jlchain/fe-antd
Description: antd组件库的个性化封装
Author: Futurer.J
Latest version: 1.0.3

# fe-antd

#### Description
antd组件库的个性化封装

#### Software Architecture
Software architecture description

#### Installation

1.  xxxx
2.  xxxx
3.  xxxx

#### Instructions

1.  xxxx
2.  xxxx
3.  xxxx

#### Contribution

1.  Fork the repository
2.  Create Feat_xxx branch
3.  Commit your code
4.  Create Pull Request


#### Gitee Feature

1.  You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md
2.  Gitee blog [blog.gitee.com](https://blog.gitee.com)
3.  Explore open source project [https://gitee.com/explore](https://gitee.com/explore)
4.  The most valuable open source project [GVP](https://gitee.com/gvp)
5.  The manual of Gitee [https://gitee.com/help](https://gitee.com/help)
6.  The most popular members  [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
npm package: @jlchain/fe-lint-react
Description: 前端 react eslint 配置
Author: Futurer.J
Latest version: 1.0.4

# @jlchain/fe-lint-react

前端 react lint 校验， 包含 eslint、stylelint

## 下载
下载命令
```bash
npm install @jlchain/fe-lint-react
```

## 用法
- eslint配置
> 文件 .eslintrc.js
```ts
module.exports = {
  extends: [
    require.resolve('@jlchain/fe-lint-react'),
  ],
};
```
> 文件 .eslintignore
```
node_modules/*
```

- stylelint配置，项目根目录下配置`.stylelintrc.js`：

```javascript
module.exports = {
    extends: [
      require.resolve('@jlchain/fe-lint-react/stylelint'),
    ],
};
```
npm package: @jlchain/fe-react
Description: 前端应用react系工具，用于解决项目开发中遇到的实际问题，含有自定义hook、高阶组件，等常用基础能力。
Author: Futurer.J
Latest version: 1.0.6

# fe-react

#### Description
前端应用react系工具，用于解决项目开发中遇到的实际问题，含有自定义hook、高阶组件，等常用基础能力。

#### Software Architecture
Software architecture description

#### Installation

1.  xxxx
2.  xxxx
3.  xxxx

#### Instructions

1.  xxxx
2.  xxxx
3.  xxxx

#### Contribution

1.  Fork the repository
2.  Create Feat_xxx branch
3.  Commit your code
4.  Create Pull Request


#### Gitee Feature

1.  You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md
2.  Gitee blog [blog.gitee.com](https://blog.gitee.com)
3.  Explore open source project [https://gitee.com/explore](https://gitee.com/explore)
4.  The most valuable open source project [GVP](https://gitee.com/gvp)
5.  The manual of Gitee [https://gitee.com/help](https://gitee.com/help)
6.  The most popular members  [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
npm package: @jlchain/fe-utils
Description: 前端应用工具(frontend application utils)，含有ts类型预设、基础通用工具(函数、类，等)。
Author: Futurer.J
Latest version: 1.0.3

# fe-utils

#### Description
前端应用工具(frontend application utils)，含有ts类型预设、基础通用工具(函数、类，等)。

#### Software Architecture
Software architecture description

#### Installation

1.  xxxx
2.  xxxx
3.  xxxx

#### Instructions

1.  xxxx
2.  xxxx
3.  xxxx

#### Contribution

1.  Fork the repository
2.  Create Feat_xxx branch
3.  Commit your code
4.  Create Pull Request


#### Gitee Feature

1.  You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md
2.  Gitee blog [blog.gitee.com](https://blog.gitee.com)
3.  Explore open source project [https://gitee.com/explore](https://gitee.com/explore)
4.  The most valuable open source project [GVP](https://gitee.com/gvp)
5.  The manual of Gitee [https://gitee.com/help](https://gitee.com/help)
6.  The most popular members  [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
npm package: @jledentu/generator-reveal
Description: Yeoman generator for creating presentations using reveal.js and Webpack
Author: Jérémie Ledentu
Latest version: 0.1.0

# Reveal.js generator

[![Build Status](https://travis-ci.org/jledentu/generator-reveal.svg?branch=master)](https://travis-ci.org/jledentu/generator-reveal)

> Yeoman generator for creating presentations using reveal.js and Webpack.

## Usage

Install `yo` and `@jledentu/generator-reveal`:

```
npm install -g yo @jledentu/generator-reveal
```

Run the generator:

```
mkdir my-presentation && cd my-presentation
yo @jledentu/reveal
```

After generation:

* Run `npm start` to start the development server
* Run `npm run build` to build the app in `dist/`
* Run `npm run pdf` to build the PDF output

## Writing slides

To add a new slide in the presentation, create a new file in `src/public/slides` and add a slide section in `src/index.ejs`:

```html
<div class="reveal">
  <div class="slides">
    <section data-markdown="slides/title.md"
      data-separator="^\r?\n---\r?\n$" data-separator-vertical="^\r?\n--\r?\n$"
      data-separator-notes="^Note:"
      data-charset="utf-8">
    </section>
    <!-- Add a section here -->
  </div>
</div>
```

For more information, see [https://github.com/hakimel/reveal.js](https://github.com/hakimel/reveal.js).

## License

[MIT](https://opensource.org/licenses/mit-license.php)
npm package: @jleechan/use-safe-array
Description: React hook and utility helpers for safely normalising nullable array props.
Latest version: 1.0.1

# react-use-safe-array

A tiny utility and React hook that normalises nullable array-like values into predictable arrays.

## Installation

```bash
npm install react-use-safe-array
# or
yarn add react-use-safe-array
```

`react-use-safe-array` lists `react` as a peer dependency and supports React 16.8 and newer. The package ships with
dual ESM/CommonJS bundles and auto-detected type definitions via the `exports` map so modern bundlers pick the right
entry point without extra configuration.

## Usage

```tsx
import { useSafeArray, toSafeArray } from "react-use-safe-array";

interface Props {
  items?: string[] | null;
}

function Example({ items }: Props) {
  const safeItems = useSafeArray(items, { fallback: ["Untitled"] });

  return (
    <ul>
      {safeItems.map((item) => (
        <li key={item}>{item}</li>
      ))}
    </ul>
  );
}

const plainArray = toSafeArray(itemsFromApi);
```

## API

### `useSafeArray(value, options?)`

Safely memoises potentially nullable props into an array.

- `value`: `T[] | null | undefined`
- `options.fallback`: optional array to use when `value` is nullish. Defaults to the same shared empty array (provide a memoised reference when passing custom fallbacks).
- `options.warnOnNonArray`: disables development warnings when set to `false`.

Returns the original array reference when `value` is already an array, otherwise the fallback array.

### `toSafeArray(value, fallback?)`

A non-React helper for normalising arrays in data layers, selectors, or tests. Accepts the same arguments as `useSafeArray` but without memoisation.

## Why not just `value ?? []`?

- Keeps developer warnings for accidental non-array values.
- Preserves referential equality when the input array is already safe.
- Shares a single empty array instance instead of creating a new array each render.
- Works seamlessly both in React components and plain TypeScript utilities.

## License

MIT

## Development

```bash
npm install
npm run typecheck
npm run test -- --run
npm run build
```

The library is bundled with [tsup](https://tsup.egoist.dev) and tested with [Vitest](https://vitest.dev).
npm package: @jleechanorg/ao-plugin-notifier-openclaw
Description: Notifier plugin: OpenClaw webhook notifications
Latest version: 0.1.0

# notifier-openclaw

OpenClaw notifier plugin for AO escalation events.

## Required OpenClaw config (`openclaw.json`)

```json
{
  "hooks": {
    "enabled": true,
    "token": "<your-hooks-token>",
    "allowRequestSessionKey": true,
    "allowedSessionKeyPrefixes": ["hook:"]
  }
}
```

## AO config (`agent-orchestrator.yaml`)

```yaml
notifiers:
  openclaw:
    plugin: openclaw
    url: http://127.0.0.1:18789/hooks/agent
    token: ${OPENCLAW_HOOKS_TOKEN}
```

## Behavior

- Sends `POST /hooks/agent` payloads with per-session key `hook:ao:<sessionId>`.
- Defaults `wakeMode: now` and `deliver: true`.
- Retries on `429` and `5xx` responses with exponential backoff.

## Token rotation

1. Rotate `hooks.token` in OpenClaw.
2. Update `OPENCLAW_HOOKS_TOKEN` used by AO.
3. Verify old token returns `401` and new token returns `200`.

## Known limitation (Phase 0)

- OpenClaw hook ingest is not idempotent by default. Replayed webhook payloads are processed as separate runs.
- Owner: AO integration.
- Follow-up: add stable event id/idempotency key support.
npm package: @jlehtonen/innerheight
Description: Utility package for defining a CSS variable that contains the inner height of the browser window.
Author: Jaakko Lehtonen
Latest version: 0.0.1

# innerheight

A package for defining a CSS variable that contains the inner height of
the browser window. "Inner height" here refers to `100vh` minus the height of
the address bar on mobile devices.
npm package: @jlengstorf/gatsby-theme-data
Description: This is a simplified theme that _only_ handles data abstraction. This is intended to be consumed by another theme.
Latest version: 0.0.3

# Gatsby Theme: Data Abstraction for a Markdown Blog

This is a simplified theme that _only_ handles data abstraction. This is intended to be consumed by another theme.

Eventually, a post explaining how this works will be posted at <https://lengstorf.com/code/data-abstraction-in-apps/>
npm package: @jlengstorf/gatsby-theme-showcase
Description: Add a showcase to any site.
Author: Jason Lengstorf
Latest version: 1.1.0

# Gatsby Theme Showcase

Add a showcase to any site.

## What you get from this theme

- Airtable integration
- A React component to display data

## Installation

To use this theme in your Gatsby sites, follow these instructions:

1.  Install the theme

    ```sh
    npm install --save @jlengstorf/gatsby-theme-showcase
    ```

2.  Add the theme to your `gatsby-config.js`:

    ```js
    module.exports = {
      plugins: ['@jlengstorf/gatsby-theme-showcase'],
    };
    ```

3.  Start your site
    ```sh
    gatsby develop
    ```

## Usage

### Theme options

| Key    | Default value | Description |
| ------ | ------------- | ----------- |
| `todo` |               | tkt         |

#### Example usage

```js
// gatsby-config.js
module.exports = {
  plugins: ['@jlengstorf/gatsby-theme-showcase'],
};
```

### Exported components

#### `Showcase`

[description of what this is and why it's useful]

#### Example usage in MDX

In any MDX file:

```mdx
import { Showcase } from '@jlengstorf/gatsby-theme-showcase';

# Look at my photos!

<Showcase />
```

#### Example usage in React components

In any React component:

```jsx
import React from 'react';
import { Showcase } from '@jlengstorf/gatsby-theme-showcase';

export default () => (
  <div>
    <Showcase />
  </div>
);
```

#### How to shadow this component

If you want to use [component shadowing](https://www.gatsbyjs.org/blog/2019-04-29-component-shadowing/) with this component, create a file at the following path in your site:

```
src/@jlengstorf/gatsby-theme-showcase/components/showcase.js
```
npm package: @jlengstorf/gatsby-theme-style
Description: This is a simplified theme that _only_ handles styling data. It relies on the data abstraction in [`@jlengstorf/gatsby-theme-data](https://github.com/jlengstorf/gatsby-theme-data).
Latest version: 1.0.6

# Gatsby Theme: Styling Abstracted Data

This is a simplified theme that _only_ handles styling data. It relies on the data abstraction in [`@jlengstorf/gatsby-theme-data](https://github.com/jlengstorf/gatsby-theme-data).

Eventually, a post explaining how this works will be posted at <https://lengstorf.com/code/data-abstraction-in-apps/>
npm package: @jlengstorf/get-twitch-oauth
Description: If you, like me, are running chatbots and other streaming tools, you’ll need an OAuth token [as of May 11, 2020](https://discuss.dev.twitch.tv/t/requiring-oauth-for-helix-twitch-api-endpoints/23916).
Author: Jason Lengstorf
Latest version: 1.0.1

# Get an Twitch OAuth Token for Server-to-Server Requests

If you, like me, are running chatbots and other streaming tools, you’ll need an OAuth token [as of May 11, 2020](https://discuss.dev.twitch.tv/t/requiring-oauth-for-helix-twitch-api-endpoints/23916).

I built this helper to create a convenient way to quickly get that access token for use in my various streaming bots and apps.

## Quickstart

### 1. Install the package

```bash
# install the package
npm i @jlengstorf/get-twitch-oauth
```

### 2. Set environment variables

```bash
TWITCH_CLIENT_ID=<YOUR_TWITCH_CLIENT_ID>
TWITCH_CLIENT_SECRET=<YOUR_TWITCH_CLIENT_SECRET>
```

### 3. Get a token

```js
const { getTwitchAccessToken } = require('@jlengstorf/get-twitch-oauth');
const { access_token } = getTwitchAccessToken();
```

For a more complete example, see `demo/index.js`.

## API

| param           | required | default                            | description                                                                                     |
| --------------- | -------- | ---------------------------------- | ----------------------------------------------------------------------------------------------- |
| `client_id`     | no       | `process.env.TWITCH_CLIENT_ID`     | your [Twitch app’s client ID](https://dev.twitch.tv/console/apps)                               |
| `client_secret` | no       | `process.env.TWITCH_CLIENT_SECRET` | your [Twitch app’s client secret](https://dev.twitch.tv/console/apps)                           |
| `grant_type`    | no       | `"client_credentials"`             | for app-to-app tokens, this _must_ be `"client_credentials"`                                    |
| `scopes`        | no       | `""`                               | any [permission scopes](https://dev.twitch.tv/docs/authentication/#scopes) required by your app |
npm package: @jlengstorf/react-tweet-embed
Description: No frills, no settings, just embedded tweets.
Author: Jason Lengstorf
Latest version: 1.0.1

# @jlengstorf/react-tweet-embed

No frills, no settings, just embedded tweets.

```js
import TweetEmbed from '@jlengstorf/react-tweet-embed';

export function MyComponent() {
  return (
    <TweetEmbed url="https://twitter.com/jlengstorf/status/1273787064668917760" />
  );
}
```

The tweet you linked is now embedded!

![Embedded tweet](https://res.cloudinary.com/jlengstorf/image/upload/q_auto,f_auto/v1593455969/oss/react-tweet-embed/embedded-tweet.png)

## Installation

```bash
npm i @jlengstorf/react-tweet-embed
```
npm package: @jlenon7/esm-ts-template
Description: Template for new projects.
Author: João Lenon
Latest version: 1.0.1

# Template 📔

> Template for new projects

[![GitHub followers](https://img.shields.io/github/followers/athennaio.svg?style=social&label=Follow&maxAge=2592000)](https://github.com/athennaio?tab=followers)
[![GitHub stars](https://img.shields.io/github/stars/AthennaIO/Template.svg?style=social&label=Star&maxAge=2592000)](https://github.com/AthennaIO/Template/stargazers/)

<p>
    <a href="https://www.buymeacoffee.com/athenna" target="_blank"><img src="https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png" alt="Buy Me A Coffee" style="height: 41px !important;width: 174px !important;box-shadow: 0px 3px 2px 0px rgba(190, 190, 190, 0.5) !important;-webkit-box-shadow: 0px 3px 2px 0px rgba(190, 190, 190, 0.5) !important;" ></a>
</p>

<p>
  <img alt="GitHub language count" src="https://img.shields.io/github/languages/count/AthennaIO/Template?style=for-the-badge&logo=appveyor">

  <img alt="Repository size" src="https://img.shields.io/github/repo-size/AthennaIO/Template?style=for-the-badge&logo=appveyor">

  <img alt="License" src="https://img.shields.io/badge/license-MIT-brightgreen?style=for-the-badge&logo=appveyor">

  <img alt="Commitizen" src="https://img.shields.io/badge/commitizen-friendly-brightgreen?style=for-the-badge&logo=appveyor">
</p>

<img src=".github/logo.svg" width="200px" align="right" hspace="30px" vspace="100px">

## Links

> For project documentation [click here](https://athenna.io). If something is not clear in the documentation please open an issue in the [documentation repository](https://github.com/athennaio/docs)

## Contributing

> If you want to contribute to this project, first read the [CONTRIBUTING.MD](https://github.com/AthennaIO/Template/blob/develop/CONTRIBUTING.md) file. It will be a pleasure to receive your help.

---

<p align='center'>
  With 💜 by <a href='https://github.com/AthennaIO'>Athenna community</a>
</p>

<p align='center'>
  <a href='https://github.com/AthennaIO/Template/graphs/contributors'>
    <img src='https://contrib.rocks/image?repo=AthennaIO/Template'/>
  </a>
</p>