open-index/open-npm huggingface dataset:
npm package: @loadreverb/agent-lab
Description: AI configuration scaffolding CLI - copy prompts, settings, skills, and commands to any project
Author: LoadReverb
Latest version: 1.0.0

# Agent-Lab

🧪 AI Configuration Scaffolding CLI - copy prompts, settings, skills, and commands to any project.

## Usage

```bash
npx agent-lab
```

## Features

- **3D ASCII Banner** - Beautiful startup display
- **Smart File Extension** - Doesn't overwrite, extends existing configs
  - Markdown files (CLAUDE.md, AGENTS.md): Content appended after `---`
  - ESLint configs: Rules merged into existing config
  - JSON files: Deep merged
- **Step-by-Step Logging** - See exactly what happens

## Adding Config Files

Add your config files to `src/templates/`:

```
src/templates/
├── CLAUDE.md
├── AGENTS.md
├── eslint/
├── prompts/
├── skills/
└── commands/
```

## Development

```bash
# Install dependencies
npm install

# Test locally
npm start

# Link globally for testing
npm link
agent-lab
```

## Publishing

```bash
npm publish
```

## License

MIT
npm package: @loadshark/in-memory
Description: An abstraction to use in-memory cache strategy
Author: Daniel Souza
Latest version: 1.3.0


# In Memory

The purpose of this package is provide an abstraction to use in-memory cache strategy with NodeJS, Typescript and Redis.




## How to install

Install @loadshark/in-memory with npm

```bash
  cd my-project

  npm i @loadshark/in-memory
```


## Features

* **startInMemory**: creating an instance of In Memory (redis is used in background)
* **useInMemory**: as hook it returns some methods to manipulate a new register in cache
  * **create**: a method that register data in the In Memory Database.
  * **get**: a method that fetch data in the In Memory Database.
  * **remove**: a method that remove data with a key as parameter.
  * **generateKey**: a method that generates a base-64 key when passed a text (string).


## Usage/Examples

In this first example we show how the **In Memory** is instantiated.
```javascript
const { startInMemory, useInMemory } = require('@loadshark/in-memory');

startInMemory({
  url: 'redis://127.0.0.1:6379'
})
```

In this example we show how you can generate a new key (that will be used to fetch data later) and create a new register in In Memory Database.
```javascript
const { create, generateKey } = useInMemory()

const key = generateKey('someText')

const user = {
    firstName: 'John',
    lastName: 'Doe'
    age: 26
}

await create(key, user)
```

Finally we'll see here how to fetch data from an already defined key and if it exists we'll delete it
```javascript
const { get, remove, generateKey } = useInMemory()

const key = generateKey('someText')

const isCached = await get(key)
  
if (isCached) {
    await remove(key)
}
```
## FAQ

#### Is it possible to use some other in-memory data structure store (other than Redis)?

For now we only support Redis as in memory database

#### How can I check the parameters of a method or the instance?

This package was released with its type declarations. 

Check the following: 
```javascript
const instance = startInMemory({
    url: 'redis://127.0.0.1:6379'
})

// its the original set method from redis that you can access directly
instance.set('someText', 'value')
```
When you type "instance." you'll see all methods from Redis instance under the sheets
npm package: @loadsmart/blocks
Description: Loadsmart's React Native Components
Author: Gustavo Barbosa
Latest version: 1.4.2

# :european_castle: Blocks
Loadsmart's React Native Components

[![Build Status](https://circleci.com/gh/loadsmart/blocks.svg?style=shield)](https://circleci.com/gh/loadsmart/blocks/tree/master)
[![codecov](https://codecov.io/gh/loadsmart/blocks/branch/master/graph/badge.svg)](https://codecov.io/gh/loadsmart/blocks)
[![npm (scoped)](https://img.shields.io/npm/v/@loadsmart/blocks.svg)](https://www.npmjs.com/package/@loadsmart/blocks)

## Installation

```
$ yarn add @loadsmart/blocks
$ react-native link @loadsmart/blocks
```

## Usage

### Basic

```tsx
import { Text, View } from 'react-native'
import { PrimaryButton } from '@loadsmart/blocks'

const MyComponent = () => (
  <View>
    <Text>Are you sure?</Text>
    <PrimaryButton title='Confirm' />
  </View>
)
```

### Theming

```tsx
import { Text, View } from 'react-native'
import { PrimaryButton, Theme, ThemeContext } from '@loadsmart/blocks'

const customTheme: Theme = {
  primaryColor: '#18515E'
}

const MyComponent = () => (
  <ThemeContext.Provider value={customTheme}>
    <View>
      <Text>Are you sure?</Text>
      <PrimaryButton title='Confirm' />
    </View>
  </ThemeContext.Provider>
)
```

## Testing

```
yarn test
```

## Storybook

If you want to take a look and play with the components in this repo, we have a [showcase app](https://github.com/loadsmart/blocks-storybook-app) made with React Native.

## License

[MIT](./LICENSE)

## Contributing

### RFCs

If you want to submit a "Request for comments" proposal, branch out from `master` (i.e.: `rfc/my-feature`) copy `0000-template.md` to `rfc/0000-my-feature.md` (where 'my-feature' is descriptive. don't assign an RFC number yet), fill in the RFC and submit a PR.

If your RFC gets approved, you can then merge the PR to `master`.
npm package: @loadsmart/data-visualization
Description: A library of data visualization React components to help in dashboard building and more!
Author: lipe-dev
Latest version: 1.1.1

# @loadsmart/data-visualization

A Collection of data visualization components to help in Dashboard building and more!

[![NPM](https://img.shields.io/npm/v/@loadsmart/data-visualization.svg)](https://www.npmjs.com/package/@loadsmart/data-visualization) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)

## Install

With NPM

```bash
npm install --save @loadsmart/data-visualization
```

or Yarn

```bash
yarn add @loadsmart/data-visualization
```

## Usage

```tsx
import React, { Component } from 'react'

import { Card } from '@loadsmart/data-visualization'

class Example extends Component {
  render() {
    return <Card />
  }
}
```

## Contributing

Guide at [CONTRIBUTING.md](https://github.com/loadsmart/data-visualization-components/blob/main/CONTRIBUTING.md)

## Meta

- **State:** development
- **Demo:** <https://loadsmart-data-insights-ui.netlify.app/>
- **Point People:** [@lipe-dev](https://github.com/lipe-dev)

## License

[MIT](../LICENSE)
npm package: @loadsmart/react-frontend-settings
Description: Dynamic frontend settings for React applications
Author: Loadsmart
Latest version: 2.1.0

# React Frontend Settings

Dynamic frontend settings for React applications.

This application is meant to be used together with [django-frontend-settings](https://github.com/loadsmart/django-frontend-settings)
or some other settings provider. The most important part is that the `getSettings` function must return a `Promise` which will resolve
to a json object like:

```json
{
  "settings": {
    "GOOGLE_MAPS_KEY": "abcd1234",
    "SOME_OTHER_SETTING": 123
  },
  "flags": {
    "ENABLE_FEATURE_AAA": true,
    "ENABLE_FEATURE_BBB": false
  }
}
```

## Usage/Examples

You will need to wrap your application with the `SettingsProvider` component, like this:

```javascript
import { SettingsProvider } from '@loadsmart/react-frontend-settings'

function getSettings() {
  return http.get('/api/frontend-settings')
}

function App() {
  return (
      <SettingsProvider getSettings={getSettings}>
        <ThemeProvider theme={myTheme}>
        <Suspense fallback={<p>Loading</p>}>
          {/* ... */}
        </Suspense>
      </SettingsProvider>
  )
}
```

The provider accepts options as well:

- updateIntervalMs: the interval to refetch the settings in ms, default: 10 minutes.
- onGetSettingsFail: how to handle an error when fetching the settings, accepts two values:
  - `keep-last`: if the request fail, keep the last known value.
  - `reset`: if the request fail, revert to the inital (empty) value.

After that you can use the hooks/hocs provided by the library:

### useSettings

```javascript
function AddressInput({ ...props }) {
  const {
    values: [gmapsKey],
    isLoading,
  } = useSettings(['settings.GOOGLE_MAPS_KEY']);

  const gMapsStaus = useScript(gmapsKey ? scriptUrl(gmapsKey) : '');

  if (isLoading) return null;

  return <GeoInput {...props} />;
}
```

### withSettings

```javascript
function AddressInput({ gmapsKey, allowedCountries, ...props }) {
  const country = allowedCountries?.split(',') || 'us';
  const gMapsStaus = useScript(gmapsKey ? scriptUrl(gmapsKey) : '');

  return <GeoInput country={country} {...props} />;
}

const options = {
  settingsMap: {
    gmapsKey: 'settings.GOOGLE_MAPS_KEY',
    allowedCountries: 'settings.ALLOWED_COUNTRIES',
  },
  loadingComponent: Loading,
};

export default withSettings(AddressInput, options);
```

### withFeatureFlag

```javascript
function ComponentV1() {
  return <span>V1</span>;
}

function ComponentV2() {
  return <span>V2</span>;
}

export default withFeatureFlag(ComponentV2, {
  flags: ['flags.ENABLE_COMPONENT_V1'],
  fallbackComponent: ComponentV1,
});
```
npm package: @loadsmart/utils
Description: [![Coverage Status](https://coveralls.io/repos/github/loadsmart/utils/badge.svg?branch=master&t=rwvbeX)](https://coveralls.io/github/loadsmart/utils?branch=master) [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE.md) [![lerna]
Latest version: 0.3.2

# Loadsmart Utils

[![Coverage Status](https://coveralls.io/repos/github/loadsmart/utils/badge.svg?branch=master&t=rwvbeX)](https://coveralls.io/github/loadsmart/utils?branch=master)
[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE.md)
[![lerna](https://img.shields.io/badge/maintained%20with-lerna-cc00ff.svg)](https://lerna.js.org/)
[![npm version](https://badge.fury.io/js/%40loadsmart%2Futils-string.svg)](https://www.npmjs.com/package/@loadsmart/utils-string)

<hr />

<p align="center">
  <p align="center">
    <a href="https://github.com/loadsmart/utils/issues">Report Bugs</a>
    ·
    <a href="https://github.com/loadsmart/utils/issues">Request Feature</a>
  </p>
</p>

<!-- TABLE OF CONTENTS -->

## Table of Contents

- [Table of Contents](#table-of-contents)
- [About The Project](#about-the-project)

<!-- ABOUT THE PROJECT -->

## About The Project

> A library for using utils at Loadsmart.

## Running the project

First of all let's lock your nvm version so it matches the specified in this project

```
nvm use
```

The next step is to install the dependencies:

```
yarn install
```

The last step is to use Lerna's bootstrap function to install all the inner packages dependencies.

```
yarn bootstrap
```

## Plugins

| package                                                | description                                        |
| ------------------------------------------------------ | -----------------------------------------------    |
| 📞 [utils-phone-number](./packages/utils-phone-number)   | useful functions for manipulating phone numbers    |
| 📝 [utils-string](./packages/utils-string)               | useful functions for manipulating string           |
| 🧪 [utils-tests](./packages/utils-tests)                 | useful functions for tests                         |
| 📏 [utils-measurement](./packages/utils-measurement)     | useful functions for manipulating measurement      |
| 🧳 [utils-object](./packages/utils-object)               | useful functions for manipulating objects          |
| 🛠️ [utils-function](./packages/utils-function)           | useful functions for handling function             |
| 🗺️ [utils-geolocation](./packages/utils-geolocation)     | useful functions for dealing with geolocation data |


## License

[MIT](./LICENSE)
npm package: @loadsmart/utils-function
Description: useful functions for handling functions
Author: Welington Silva
Latest version: 0.3.1

# `utils-function`

> useful functions for handling `function`s.

## Install via NPM

```bash
$ npm i @loadsmart/utils-function --save
```

## Install via yarn

```bash
$ yarn add @loadsmart/utils-function
```

## Usage

```jsx
import React from 'react'
import { isFunction } from '@loadsmart/utils-function'

export default ({ onClick }) => {
  const onClickHandler = isFunction(onClick) ? onClick : null

  return (
    <button type="button" onClick={onClickHandler}>
      Do something
    </button>
  )
}
```
npm package: @loadsmart/utils-geolocation
Description: useful functions for dealing with geolocation data
Author: Felipe Pereira
Latest version: 0.3.1

[![BundlePhobia](https://badgen.net/bundlephobia/min/@loadsmart/utils-geolocation)](https://bundlephobia.com/result?p=@loadsmart/utils-geolocation)
[![BundlePhobia](https://badgen.net/bundlephobia/minzip/@loadsmart/utils-geolocation)](https://bundlephobia.com/result?p=@loadsmart/utils-geolocation)

# `utils-geolocation`

> useful functions for dealing with geolocation data

## Install via NPM

```bash
$ npm i @loadsmart/utils-geolocation --save
```

## Install via yarn

```bash
$ yarn add @loadsmart/utils-geolocation
```

## Usage

```jsx
import React from 'react'
import {
  isValidGeoSuggestion
} from '@loadsmart/utils-geolocation'

export default ({geoData}) => (
  <div>
    { isValidGeoSuggestion(geoSuggestionData) ? <Map data={geoData} /> : <Error /> }
  </div>
)
```

## Available Functions

These are the functions available at this library:

### `gMapsToAddressComponentsObject(gmaps, config)`
Converts a gmaps object containing the `adress_components` field to an object in the form:

```json
{
  "city": "City Name",
  "state": "ST",
  "country": "CT",
  "zipcode": "00000"
}
```

### `isValidGeoSuggestion(geoSuggestion)`
Checks if the passed geoSuggestion is a valid geo suggestion object, containing all required fields (location, gmaps, and description), returns a boolean.
npm package: @loadsmart/utils-measurement
Description: functions to convert units
Author: Djalma Araujo
Latest version: 0.3.2

[![BundlePhobia](https://badgen.net/bundlephobia/min/@loadsmart/utils-measurement)](https://bundlephobia.com/result?p=@loadsmart/utils-measurement)
[![BundlePhobia](https://badgen.net/bundlephobia/minzip/@loadsmart/utils-measurement)](https://bundlephobia.com/result?p=@loadsmart/utils-measurement)

# `utils-measurement`

> useful functions for manipulating measurement

## Install via NPM

```bash
$ npm i @loadsmart/utils-measurement --save
```

## Install via yarn

```bash
$ yarn add @loadsmart/utils-measurement
```

## Usage

```jsx
import React from 'react'
import {
  celsiusToFahrenheit,
  fahrenheitToCelsius,
  kmToMiles,
  kgToPounds,
} from '@loadsmart/utils-measurement'

export default () => (
  <div>
    temperature in Fahrenheit: {celsiusToFahrenheit(100)}
    temperature in Celsius: {fahrenheitToCelsius(100)}
    KM in Miles: {kmToMiles(100)}
    Kg in Pounds: {kgToPounds(100)}
    temperature in Celsius: {fahrenheitToCelsius(100)}
  </div>
)
```
npm package: @loadsmart/utils-object
Description: useful functions for manipulating objects
Author: Welington Silva
Latest version: 0.3.1

# `utils-object`

> useful functions for manipulating objects.

## Install via NPM

```bash
$ npm i @loadsmart/utils-object --save
```

## Install via yarn

```bash
$ yarn add @loadsmart/utils-object
```

## Usage

```jsx
import React from 'react'
import { isNil } from '@loadsmart/utils-object'

export default ({ user }) => {
  return <h1>{`Hello, ${isNil(user) ? 'guest' : user.name}`}</h1>
}
```
npm package: @loadsmart/utils-phone-number
Description: useful functions for manipulating phone numbers
Author: Davidson Fellipe
Latest version: 0.3.1

[![BundlePhobia](https://badgen.net/bundlephobia/min/@loadsmart/utils-phone-number)](https://bundlephobia.com/result?p=@loadsmart/utils-phone-number)
[![BundlePhobia](https://badgen.net/bundlephobia/minzip/@loadsmart/utils-phone-number)](https://bundlephobia.com/result?p=@loadsmart/utils-phone-number)

# `utils-phone-number`

> useful functions for manipulating phone numbers

## Install via NPM

```bash
$ npm i @loadsmart/utils-phone-number --save
```

## Install via yarn

```bash
$ yarn add @loadsmart/utils-phone-number
```

## Usage

```jsx
import React from 'react'

import { format } from '@loadsmart/utils-phone-number'

const phone = '+12345678910'
const mask = '+X (XXX) XXX-XXXX'

export default () => (
  <div>
    formatted: {format(phone, mask)}, should render: (+1 (234) 567-8910)
  </div>
)
```
npm package: @loadsmart/utils-string
Description: useful functions for manipulating string
Author: Davidson Fellipe
Latest version: 0.3.1

[![BundlePhobia](https://badgen.net/bundlephobia/min/@loadsmart/utils-string)](https://bundlephobia.com/result?p=@loadsmart/utils-string)
[![BundlePhobia](https://badgen.net/bundlephobia/minzip/@loadsmart/utils-string)](https://bundlephobia.com/result?p=@loadsmart/utils-string)

# `utils-string`

> useful functions for manipulating strings

## Install via NPM

```bash
$ npm i @loadsmart/utils-string --save
```

## Install via yarn

```bash
$ yarn add @loadsmart/utils-string
```

## Usage

```jsx
import React from 'react'
import {
  toCapitalizeFirstLetter,
  toLocaleCapitalizeFirstLetter,
} from '@loadsmart/utils-string'

export default () => (
  <div>
    Uppercase First Letter: {toCapitalizeFirstLetter('new york')}
    Uppercase First Letter with locale provided: {toLocaleCapitalizeFirstLetter(
      'istanbul',
      'tr'
    )}
  </div>
)
```
npm package: @loadsmart/utils-temperature
Description: useful functions for manipulating temperatures
Author: Davidson Fellipe
Latest version: 0.1.1

[![BundlePhobia](https://badgen.net/bundlephobia/min/@loadsmart/utils-temperature)](https://bundlephobia.com/result?p=@loadsmart/utils-temperature)
[![BundlePhobia](https://badgen.net/bundlephobia/minzip/@loadsmart/utils-temperature)](https://bundlephobia.com/result?p=@loadsmart/utils-temperature)

# `temperature`

> useful functions for manipulating temperatures

## Install via NPM

```bash
$ npm i @loadsmart/utils-temperature --save
```

## Install via yarn

```bash
$ yarn add @loadsmart/utils-temperature
```

## Usage

```jsx
import React from 'react'
import {
  celsiusToFahrenheit,
  fahrenheitToCelsius,
} from '@loadsmart/utils-temperature'

export default () => (
  <div>
    temperature in Fahrenheit: {celsiusToFahrenheit('100')}
    temperature in Celsius: {fahrenheitToCelsius('100')}
  </div>
)
```
npm package: @loadsmart/utils-tests
Description: useful functions for tests
Author: Alessandro Martini
Latest version: 0.3.1

[![BundlePhobia](https://badgen.net/bundlephobia/min/@loadsmart/utils-tests)](https://bundlephobia.com/result?p=@loadsmart/utils-tests)
[![BundlePhobia](https://badgen.net/bundlephobia/minzip/@loadsmart/utils-tests)](https://bundlephobia.com/result?p=@loadsmart/utils-tests)

# `tests`

> useful functions for tests

## Install via NPM

```bash
$ npm i @loadsmart/utils-tests --save-dev
```

## Install via yarn

```bash
$ yarn add -D @loadsmart/utils-tests
```

## Usage

```jsx
import * as React from 'react'
import styled from 'styled-components'
import { renderer } from '@loadsmart/utils-tests'

test('test a component', () => {
  const { container } = renderer(<MyComponent />)
    .withTheme(myTheme)
    .withRouter()
    .render()
})
```