open-index/open-npm huggingface dataset:
npm package: @ptolemy2002/js-math-utils
Description: This library contains mathematical utilities for JavaScript development.
Latest version: 2.0.5

# JS Math Utils
This library contains mathematical utilities for JavaScript development.

The functions are not exported as default, so you can import them in one of the following ways:
```javascript
// ES6
import { functionName } from '@ptolemy2002/js-math-utils';
// CommonJS
const { functionName } = require('@ptolemy2002/js-math-utils');
```

## Type Reference
```typescript
type ClampOptions = {
    min?: number;
    max?: number;
};
```

## Functions
The following functions are available in the library:

### clamp
#### Description
Clamps a number between a minimum and maximum value.

#### Parameters
- `value` (`number`): The value to be clamped.
- `args` - An object containing the following properties:
  - `min` (`number?`): The minimum value. If not specified, the value is not clamped on the minimum side.
  - `max` (`number?`): The maximum value. If not specified, the value is not clamped on the maximum side.

#### Returns
`number` - The clamped value.

### wrapNumber
#### Description
Wraps a number between a minimum and maximum value, inclusive on the maximum side (so `min - 1` gets converted to `max` and `max + 1` gets converted to `min`).

#### Parameters
- `n` (`number`): The number to be wrapped.
- `min` (`number`): The minimum value.
- `max` (`number`): The maximum value.

#### Returns
`number` - The wrapped value.

## Peer Dependencies
This project does not have any peer dependencies (they are all bundled with the library), so it should work out of the box.

## Commands
The following commands exist in the project:

- `npm run uninstall` - Uninstalls all dependencies for the library
- `npm run reinstall` - Uninstalls and then Reinstalls all dependencies for the library
- `npm run example-uninstall` - Uninstalls all dependencies for the example app
- `npm run example-install` - Installs all dependencies for the example app
- `npm run example-reinstall` - Uninstalls and then Reinstalls all dependencies for the example app
- `npm run example-start` - Starts the example app after building the library
- `npm run build` - Builds the library
- `npm run release` - Publishes the library to npm without changing the version
- `npm run release-patch` - Publishes the library to npm with a patch version bump
- `npm run release-minor` - Publishes the library to npm with a minor version bump
- `npm run release-major` - Publishes the library to npm with a major version bump
npm package: @ptolemy2002/react-force-rerender
Description: The main purpose of this library is to provide access to a hook that returns a function that forces a rerender upon being called. It uses setTimeout as a method to bypass the "Cannot update a component while rendering a different component" error (seems t
Latest version: 2.0.0

# React Force Rerender
The main purpose of this library is to provide access to a hook that returns a function that forces a rerender upon being called. It uses setTimeout as a method to bypass the "Cannot update a component while rendering a different component" error (seems to be the easiest solution found at [stackoverflow](https://stackoverflow.com/a/63659469/7369908)).

The hook is exported as default, so you can import in one of the following ways:
```javascript
// ES6
import useForceRerender from '@ptolemy2002/react-force-rerender';
// CommonJS
const useForceRerender = require('@ptolemy2002/react-force-rerender');
```

## Functions
The following functions are available in the library:

### useForceRerender
#### Description
This hook returns a function that forces a rerender upon being called. It uses setTimeout as a method to bypass the "Cannot update a component while rendering a different component" error.

#### Parameters
None

#### Returns
`() => void` - The function that forces a rerender.

## Peer Dependencies
- `react^18.3.1`
- `react-dom^18.3.1`

## Commands
The following commands exist in the project:

- `npm run build` - Builds the library
- `npm run dev` - Starts the development server
- `npm run lint` - Lints the project
- `npm run uninstall` - Uninstalls all dependencies for the library and clears the cache
- `npm run reinstall` - Uninstalls, clears the cache, and then reinstalls all dependencies for the library
- `npm run release` - Publishes the library to npm without changing the version
- `npm run release-patch` - Publishes the library to npm with a patch version bump
- `npm run release-minor` - Publishes the library to npm with a minor version bump
- `npm run release-major` - Publishes the library to npm with a major version bump
npm package: @ptolemy2002/zod-utils
Description: Various utilities for working with Zod schemas.
Latest version: 1.4.0

# Zod Utils
Various utilities for working with Zod schemas.

## Table of Contents
- [Type Reference](docs/type-reference.md) - Complete type definitions for all exported types
- `util` - Utilities for working with Zod schemas and errors
  - [clone](docs/util/clone.md) - Utility for cloning Zod schemas without affecting the original
  - [function](docs/util/function.md) - Schema factory for validating callable functions with input/output schemas
  - [interpret](docs/util/interpret.md) - Utilities for formatting Zod errors as strings
  - [issuePathStartsWith](docs/util/issuePathStartsWith.md) - Utility for checking whether a Zod issue path starts with a given prefix
  - [prefixIssuePath](docs/util/prefixIssuePath.md) - Utility for prepending a path prefix to a Zod issue
  - [typeGuards](docs/util/typeGuards.md) - Type guards for Zod-related values
  - [validate](docs/util/validate.md) - Schema-wrapping factories for creating validators

## Peer Dependencies
- `zod^4.3.6`

## Commands
The following commands exist in the project:

- `npm run uninstall` - Uninstalls all dependencies for the library
- `npm run reinstall` - Uninstalls and then Reinstalls all dependencies for the library
- `npm run build` - Builds the library
- `npm run release` - Publishes the library to npm without changing the version
- `npm run release-patch` - Publishes the library to npm with a patch version bump
- `npm run release-minor` - Publishes the library to npm with a minor version bump
- `npm run release-major` - Publishes the library to npm with a major version bump
- `npm run test` - Runs the tests for the library
- `npm run test:coverage` - Runs the tests for the library and generates a coverage report
- `npm run test:watch` - Runs the tests for the library in watch mode
- `npm run typecheck` - Identifies any type errors in the library

## Testing Guide

This library uses [Jest](https://jestjs.io/) with [ts-jest](https://kulshekhar.github.io/ts-jest/) for testing TypeScript code.

### Running Tests

```bash
# Run all tests
npm test

# Run tests in watch mode (re-runs on file changes)
npm run test:watch

# Run tests with coverage report
npm run test:coverage
```

Test files are located in `./test` and any `__tests__` directories within the `./src` directory. Generally, test files should be named with a `.test.ts` suffix.