open-index/open-npm huggingface dataset:
npm package: @neezco/cache
Description: A simple and efficient in-memory cache for JavaScript and TypeScript projects, designed to provide fast access to frequently used data while minimizing memory usage.
Author: Daniel Hernández Ochoa
Latest version: 0.6.0

## 🚧 Project Status

> **⚠️ Under active development**  
> This library has not yet reached its first stable release.  
> The API is still evolving, and **breaking changes** may occur at any time.  
> Production use is **not recommended** until a stable version is published.

# Neezco Cache 🚀

**A smart, lightweight caching library that helps you store data temporarily with automatic cleanup.**

## Why Neezco Cache?

### 🧹 **Automatic Cleanup**

Expired data is cleaned up automatically in the background without your intervention.

### 📊 **Scales Well**

Whether caching 10 items or millions, Neezco Cache is designed to stay fast and efficient.

### 🏷️ **Tag-Based Invalidation**

Group related data and clear it all with a single command.

### 🎯 **Smart Memory Management**

Intelligently prioritizes what to clean up based on usage patterns and memory constraints.

### ⚡ **CPU Efficient**

All core operations are O(1) with minimal CPU overhead. Background cleanup runs intelligently without blocking your application. Perfect for resource-constrained environments and high-throughput scenarios.

---

## Documentation

- **[Getting Started](./docs/getting-started.md)** - Installation and basic usage
- **[Examples](./docs/examples.md)** - Real-world use cases (API caching, sessions, database queries, etc.)
- **[API Reference](./docs/api-reference.md)** - Complete API documentation with edge cases
- **[Configuration](./docs/configuration.md)** - All configuration options explained

---

## License

MIT © [Daniel Hernández Ochoa](https://github.com/DanhezCode)

---

## Contributing

We'd love your help! Check out [CONTRIBUTING.md](./CONTRIBUTING.md) for guidelines.

**Questions? Found a bug?** [Open an issue](https://github.com/neezco/cache/issues) on GitHub.
npm package: @neezer/action
Description: [![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)
Author: Evan Sherwood
Latest version: 1.2.2

# @neezer/action

[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)

Action is a value object representing an event. It is modelled closely after
[FSA](https://github.com/redux-utilities/flux-standard-action) and comes with
some additional behavior.

- Action is a rich object, with an associated Meta
- Actions can be merged together to create aggregate actions
- Actions carry a history of where they've been and how they've evolved,
  creating a human-readable narrative of their lifecycle
- Actions can be ground together via an arbitrary correlaion id as well as by an
  arbitrary connection id
- Actions can be serialized to JSON and will strip out internal properties
  before doing so
npm package: @neezer/action-combinators
Description: [![Build Status](https://travis-ci.org/neezer/action-combinators.svg?branch=master)](https://travis-ci.org/neezer/action-combinators) [![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://g
Author: Evan Sherwood
Latest version: 1.0.4

# @neezer/action-combinators

[![Build Status](https://travis-ci.org/neezer/action-combinators.svg?branch=master)](https://travis-ci.org/neezer/action-combinators)
[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)

Various combinators for use with streams of
[`aciton`](https://github.com/neezer/action)s.
npm package: @neezer/exit
Description: > A helper to exit your application cleanly when SIGNAL is received.
Author: Evan Sherwood
Latest version: 2.3.0

# @neezer/exit

> A helper to exit your application cleanly when SIGNAL is received.

[![Build Status](https://travis-ci.org/neezer/node-exit.svg?branch=master)](https://travis-ci.org/neezer/node-exit)
[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)

**Example**:

Break down the component pieces of your application that need to gracefully exit
into event emitters. Pass these event emitters to `exit` to wait for all of them
to report a successful exit before shutting down the main application.

So, let's say you have a web app that is connected to a database and RabbitMQ. There are three component pieces to this application that need to be gracefully shutdown:

1. The HTTP server
1. The database connection pool
1. The RabbitMQ client

In some cases, the instance of your client or server is already an event emitter. If so, you can define your handlers directly on the same object:

```js
// file: httpServer.js

import { INITIATE_EXIT, COMPLETE_EXIT } from "@neezer/exit";
import { createServer } from "http";

const server = createServer(/* ... */);

server.on(INITIATE_EXIT, () => {
  server.close();
});

server.on("close", () => {
  server.emit(COMPLETE_EXIT);
});

export default server;
```

In some cases, you need to wrap the client/server interface in an EventEmitter yourself:

```js
// file: db.js

import { INITIATE_EXIT, COMPLETE_EXIT } from "@neezer/exit";
import pgClient from "./pgClient";
import { EventEmitter } from "events";

const client = pgClient(/* ... */);
const status = new EventEmitter();

status.on(INITIATE_EXIT, () => {
  client.close().then(() => {
    status.emit(COMPLETE_EXIT);
  });
});

export default status;
```

Then—in your top-level entry file—you can pass these event emitters to exit:

```js
// file: app.js

import { exit } from "@neezer/exit";
import http from "./httpServer";
import db from "./db";
import amqp from "./amqp";

exit(http, db, amqp);
```

Exit will configure listeners on the main Node thread for SIGINT & SIGKILL, then
will emit `INITIATE_EXIT` on each of the provided event emitters above, and will
wait for each of them to emit `COMPLETE_EXIT` after a certain period of time.
When it collects all the completed events, it will exit the main process
cleanly.

If one of the child pieces does not exit cleanly or times out, the library will
exit the main application thread with a status code of `1`.

### Why?

I found myself copy-pasting a lot of the signal handling code from repo to repo,
so extraced it out into this interface instead.
npm package: @neezer/liz
Description: [![Build Status](https://travis-ci.org/neezer/liz.svg?branch=master)](https://travis-ci.org/neezer/liz) [![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/sem
Latest version: 1.7.3

# @neezer/liz

[![Build
Status](https://travis-ci.org/neezer/liz.svg?branch=master)](https://travis-ci.org/neezer/liz)
[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)

<p align="center">
  <img src="https://user-images.githubusercontent.com/29997/50456522-d5edd500-0909-11e9-95eb-1aea39b6fc72.jpg" title="liz from magic school bus" />
</p>

Liz is a helper to create a app-centric message bus to handle business logic.
That bus can be plugged-into by using one or many of the following adapters:

- [liz-amqp](https://github.com/neezer/liz-amqp)
- [liz-socket](https://github.com/neezer/liz-socket)
npm package: @neezer/liz-amqp
Description: [![Build Status](https://travis-ci.org/neezer/liz-amqp.svg?branch=master)](https://travis-ci.org/neezer/liz-amqp) [![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-r
Latest version: 1.3.1

# @neezer/liz-amqp

[![Build Status](https://travis-ci.org/neezer/liz-amqp.svg?branch=master)](https://travis-ci.org/neezer/liz-amqp)
[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)

AMQP bindings for [liz](https://github.com/neezer/liz)
npm package: @neezer/liz-socket
Description: [![Build Status](https://travis-ci.org/neezer/liz-socket.svg?branch=master)](https://travis-ci.org/neezer/liz-socket) [![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semant
Author: Evan Sherwood
Latest version: 1.3.1

# @neezer/liz-socket

[![Build Status](https://travis-ci.org/neezer/liz-socket.svg?branch=master)](https://travis-ci.org/neezer/liz-socket)
[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release)

WebSocket bindings for [liz](https://github.com/neezer/liz)
npm package: @nefbl/cli
Description: nefbl辅助命令
Author: 你好2007
Latest version: 0.5.1

<p align='center'>
    <a href='https://nefbl.github.io/api' target='_blank'>
        <img src='./logo.png'>
    </a>
</p>

# Nefbl | 新一代前端框架（辅助命令）

<p>
  <a href="https://hai2007.gitee.io/npm-downloads?interval=7&packages=@nefbl/cli"><img src="https://img.shields.io/npm/dm/@nefbl/cli.svg" alt="downloads"></a>
  <a href="https://www.npmjs.com/package/@nefbl/cli"><img src="https://img.shields.io/npm/v/@nefbl/cli.svg" alt="Version"></a>
  <a href="https://github.com/nefbl/cli/blob/master/LICENSE"><img src="https://img.shields.io/npm/l/@nefbl/cli.svg" alt="License"></a>
  <a href="https://github.com/nefbl/cli" target='_blank'><img alt="GitHub repo stars" src="https://img.shields.io/github/stars/nefbl/cli?style=social"></a>
</p>

## Issues
使用的时候遇到任何问题或有好的建议，请点击进入[issue](https://github.com/nefbl/cli/issues)！

## How to use?
首先你需要通过命令行安装cli，就像这样：

```
npm install -g @nefbl/cli
```

然后，就可以在命令行中使用了。你可以在命令行执行下面的命令来获得帮助：

```
nefbl --help
```

开源协议
---------------------------------------
[MIT](https://github.com/nefbl/cli/blob/master/LICENSE)

Copyright (c) 2021-2022 [hai2007](https://hai2007.github.io/SweetHome/) 走一步，再走一步。
npm package: @nefbl/pack
Description: nefbl打包工具
Author: 你好2007
Latest version: 0.5.0

<p align='center'>
    <a href='https://nefbl.github.io/pack' target='_blank'>
        <img src='./logo.png'>
    </a>
</p>

# Nefbl | 新一代前端框架（打包工具）

<p>
  <a href="https://hai2007.gitee.io/npm-downloads?interval=7&packages=@nefbl/pack"><img src="https://img.shields.io/npm/dm/@nefbl/pack.svg" alt="downloads"></a>
  <a href="https://www.npmjs.com/package/@nefbl/pack"><img src="https://img.shields.io/npm/v/@nefbl/pack.svg" alt="Version"></a>
  <a href="https://github.com/nefbl/pack/graphs/commit-activity" target='_blank'><img alt="GitHub repo commit" src="https://img.shields.io/github/last-commit/nefbl/pack"></a>
  <a href="https://github.com/nefbl/pack/blob/master/LICENSE"><img src="https://img.shields.io/npm/l/@nefbl/pack.svg" alt="License"></a>
  <a href="https://github.com/nefbl/pack" target='_blank'><img alt="GitHub repo stars" src="https://img.shields.io/github/stars/nefbl/pack?style=social"></a>
</p>

## Issues
使用的时候遇到任何问题或有好的建议，请点击进入[issue](https://github.com/nefbl/pack/issues)！

## How to use?

如果你想快速试试，可以使用命令创建项目。

首先，你需要安装cli工具：

```
npm install -g @nefbl/cli
```

然后，找个地方（比如桌面）执行生成命令：

```
nefbl create
```

根据提示依次输入项目名称、描述、选择打包工具等即可。

<img src='./images/img1.png' />

如上截图，请在选择打包工具的时候，选择```@nefbl/pack```这一项。

最后回车，即可得到一个空的基于```@nefbl/pack```打包的项目了。

当然，如果你不想创建，也可以直接查看我们提供的[ 例子项目 example ](https://github.com/nefbl/example/tree/@nefbl/pack)哦~

具体的使用你可以[查阅文档](https://nefbl.github.io/pack)哦~

### 更多基于此打包工具的项目

- [在线H5音频编辑器](https://github.com/hai2007/audio-editor)
- [前端演示例子](https://github.com/hai2007/What-is-the-front-end)

等......

欢迎你的加入，如果希望加入我们，请去[issue](https://github.com/nefbl/pack/issues)给我们留言。

~~我们会基于此积累更多打包工具相关技术，不断丰富本项目，待时机成熟，再设计并开发一个真正通用的打包工具，如果运气不好，就止步于此吧。~~

> 鉴于各种考虑，后续本项目将不会再进行大的改造和升级，除非有必要，而对于```nefbl```的后续打包工具，官方选型同步改变为[EtcPack](https://etcpack.github.io/api/)，本项目转入维护状态。

> 非常感谢本项目开发中积累的经验和教训。

## How to debug?

命令行进入```test```文件夹，然后执行：

```
npm run debug
```

在需要调试的地方提前添加“ debugger ”语句，这和普通的web端调试一样，接着，在chrome浏览器地址栏中输入：

```
chrome://inspect/#devices
```

接着，请点击“ Open dedicated DevTools for Node ”后进入调试界面。

开源协议
---------------------------------------
[MIT](https://github.com/nefbl/pack/blob/master/LICENSE)

Copyright (c) 2021-2022 [hai2007](https://hai2007.gitee.io/sweethome/) 走一步，再走一步。
npm package: @nefex-ui/react
Description: ## Installation
Latest version: 4.0.4

# @nefex-ui/react

## Installation

- First install the styled-components on your project using:
```
# with npm
npm install styled-components

# with yarn
yarn add styled-components
```

- Second config the theme on your project
```ts
import { ThemeProvider } from 'styled-components';
import { defaultTheme } from '@nefex-ui/react';

function App() {
  return (
    <ThemeProvider theme={defaultTheme}>
      <h1>Hello World!</h1>
    </ThemeProvider>
  );
}

export default App;
```

- You can also use your own colors, create the folder `styles` on src and add new file `theme`, now you can import your own theme on app:
  - Here you can change the whole theme to suit your preferences.
```ts
// project/scr/styles/theme.ts
import { defaultTheme } from '@nefex-ui/react';

const { colors, ...restDefaultTheme } = defaultTheme;

const { primary, secondary, ...restColors } = colors;

export const theme = {
  colors: {
    primary: 'your_primary_color',
    secondary: 'your_secondary_color',
    ...restColors,
  },
  ...restDefaultTheme,
};
```