open-index/open-npm huggingface dataset:
npm package: @oatnil/ud
Description: UnDercontrol CLI - task and expense management from the terminal
Latest version: 0.65.3

# @oatnil/ud

UnDercontrol CLI - task and expense management from the terminal.

## Install

```bash
npm install -g @oatnil/ud
```

## Usage

```bash
# Run directly
ud task list
ud query "status = 'todo'"

# Or use npx (no install needed)
npx @oatnil/ud task list
npx @oatnil/ud --help
```

## Other Installation Methods

- **Homebrew**: `brew tap oatnil-top/ud && brew install ud`
- **Direct download**: `curl -fsSL https://get.oatnil.com/ud | bash`
- **APT (Ubuntu/Debian)**: See [documentation](https://docs.oatnil.com/cli)

## License

MIT
npm package: @oats-ts/validators
Description: Standalone lightweight runtime validator utility functions used extensively in oats libraries.
Author: Balázs Édes
Latest version: 0.0.51

# @oats-ts/validators

Standalone lightweight runtime validator utility functions used extensively in oats libraries.

- Created by function composition.
- Validators **NEVER** throw, if they do, please [report](https://github.com/oats-ts/oats-ts/issues) it.
- Validators returns a list of `Issue`s that can be formatted, and presented to the user.

And an example validator:

```ts
import { object, shape, string, number, array, items, boolean, union, lazy } from '@oats-ts/validators'

const personValidator = configure(
  object(
    shape({
      name: string(),
      email: optional(string()),
      occupation: union({
        programmer: literal('programmer'),
        musician: literal('musician'),
        other: literal('other'),
      }),
      married: boolean(),
      friends: array(items(lazy(() => personValidator))),
      address: object(
        shape({
          country: string(),
          zip: number(),
          city: string(),
          street: string(),
        }),
      ),
    }),
  ),
)
```

When validating simply call this function. It will return a list of `Issue`s, reporting everything that's wrong with the input:

```ts
const validPerson = {
  name: 'Test',
  email: 'test',
  occupation: 'other',
  married: false,
  friends: [],
  address: {
    country: 'Test',
    zip: 1243,
    city: 'Test',
    street: 'Test',
  },
}

const invalidPerson = {
  name: false,
  email: 1,
  fr_iends: [{ hi: true }],
}

// Returns an empty array
expect(personValidator(validPerson).length).toBe(0)
// Returns an array with all the issues
expect(personValidator(invalidPerson).length).toBeGreaterThan(0)
```
npm package: @oatswap/oatswap-uikit
Description: Set of UI components for OatSwap projects
Latest version: 1.0.8

# 🌾 OatSwap UIKit

[![Version](https://img.shields.io/npm/v/@oatswap/oatswap-uikit)](https://www.npmjs.com/package/@oatswap/oatswap-uikit) [![Size](https://img.shields.io/bundlephobia/min/@oatswap/oatswap-uikit)](https://www.npmjs.com/package/@oatswap/oatswap-uikit)

OatSwap UIKit is a set of React components and hooks used to build pages on Pancake's apps. It also contains a theme file for dark and light mode.

## Install

`yarn add @oatswap/oatswap-uikit`

## Setup

### Theme

Before using OatSwap UIKit, you need to provide the theme file to styled-component.

```
import { ThemeProvider } from 'styled-components'
import { light, dark } from '@oatswap/oatswap-uikit'
...
<ThemeProvider theme={isDark}>...</ThemeProvider>
```

### Reset

A reset CSS is available as a global styled component.

```
import { ResetCSS } from '@oatswap/oatswap-uikit'
...
<ResetCSS />
```

### Types

This project is built with Typescript and export all the relevant types.

## How to use the UIkit

If you want to use components from the UIKit, check the [Storybook documentation](https://oatswap.github.io/oatswap-uikit/)