open-index/open-npm huggingface dataset:
npm package: @ga-ut/idxdb
Description: Type-safe IndexedDB wrapper for TypeScript
Author: ga-ut
Latest version: 1.2.0

# @ga-ut/idxdb

A type-safe IndexedDB wrapper for TypeScript applications that provides a simple and intuitive API.

## Features

- Full TypeScript support with type inference
- Promise-based API
- Automatic schema management
- Chainable query builder
- Support for indexes and compound queries

## Installation

```bash
npm install @ga-ut/idxdb
```

## Usage

### Basic Example

```typescript
import { IdxDB } from "@ga-ut/idxdb";

// Define your schema
const userSchema = IdxDB.createSchema("users", {
  key: "id",
  value: {
    id: string,
    name: string,
    age: number,
  },
  keyPath: "id",
  indexes: [{ name: "name", keyPath: "name" }],
});

// Create database instance
const db = new IdxDB(userSchema);
const handler = await db.open("myDB", 1);

// Add data
await handler.set({
  tableName: "users",
  data: { id: "1", name: "John", age: 30 },
});

// Get data
const user = await handler.get({
  tableName: "users",
  key: "1",
});

// Query data
const results = await handler.query("users").where("name", "John").execute();
```

### Advanced Queries

```typescript
// Pagination
const results = await handler
  .query("users")
  .orderBy("age")
  .limit(10)
  .offset(20)
  .execute();

// Using indexes
const johnDoes = await handler.query("users").where("name", "John").execute();

// Range queries
const adults = await handler
  .query("users")
  .where("age", { gte: 18 })
  .execute();
```

## API Reference

### Schema Definition

```typescript
interface IndexedDBTableSchema<Key, Value> {
  readonly key: Key;
  value: Value;
  keyPath: string;
  autoIncrement?: boolean;
  indexes?: Array<{
    name: string;
    keyPath: string | string[];
    options?: IDBIndexParameters;
  }>;
}
```

### Handler Methods

- `set(params)`: Add or update a record
- `get(params)`: Retrieve a record by key
- `delete(params)`: Delete a record by key
- `clear(params)`: Clear all records in a store
- `getAll(params)`: Get all records
- `count(params)`: Get total record count
- `query(tableName)`: Create a query builder

### Query Builder Methods

- `where(indexName, value)`: Filter by index
- `orderBy(key, direction?)`: Sort results
- `limit(count)`: Limit result count
- `offset(count)`: Skip initial results
- `execute()`: Execute query and return results

### Helpers

- `createKeyRange(options)`: Available for custom IndexedDB range scenarios; `where()` also accepts range descriptors like `{ gte, lt }` or `{ between: [lower, upper] }` for common cases.

## Development

Install dependencies and run the Bun-based workflow:

```bash
bun install
bun run build
bun run lint
bun test
bun run format
```

The build emits both CommonJS (`dist/index.cjs`) and ES module (`dist/index.js`) bundles along with TypeScript declarations in `dist/index.d.ts`. Run `bun run lint` before submitting changes; rely on `bun run format` for safe Biome autofixes.

## License

MIT
npm package: @ga1az/elysiajs-jwt
Description: Plugin for Elysia for using JWT Authentication
Author: saltyAom
Latest version: 1.1.1-beta.0.1

# @elysiajs/static

> This package is a fork of [@elysiajs/jwt](https://github.com/elysiajs/elysia-jwt) and is not maintained by Elysia.JS team. This fork is created to fix iat validation [issue](https://github.com/elysiajs/elysia-jwt/issues/52)

Plugin for [Elysia](https://github.com/elysiajs/elysia) for using JWT Authentication.

## Installation

```bash
bun add @elysiajs/jwt
```

## Example

```typescript
import { Elysia, t } from 'elysia'
import { jwt } from '@elysiajs/jwt'
import { cookie } from '@elysiajs/cookie'

const app = new Elysia()
	.use(
		jwt({
			name: 'jwt',
			// This should be Environment Variable
			secret: 'MY_SECRETS'
		})
	)
	.use(cookie())
	.get('/sign/:name', async ({ jwt, cookie, setCookie, params }) => {
		setCookie('auth', await jwt.sign(params), {
			httpOnly: true
		})

		return `Sign in as ${params.name}`
	})
	.get('/profile', async ({ jwt, set, cookie: { auth } }) => {
		const profile = await jwt.verify(auth)

		if (!profile) {
			set.status = 401
			return 'Unauthorized'
		}

		return `Hello ${profile.name}`
	})
	.listen(8080)
```

## Config

This package extends [jose](https://github.com/panva/jose), most config is inherited from Jose.

Below are configurable properties for using JWT plugin

### name

Name to decorate method as:

For example, `jwt` will decorate Context with `Context.jwt`

### secret

JWT secret key

### schema

Type strict validation for JWT payload

## Jose's config

Below is the config inherits from [jose](https://github.com/panva/jose)

### alg

@default 'HS256'

Algorithm to sign JWT with

### crit

Critical Header Parameter.

### iss

JWT Issuer

@see [RFC7519#section-4.1.1](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.1)

### sub

JWT Subject

@see [RFC7519#section-4.1.2](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.2)

### aud

JWT Audience

@see [RFC7519#section-4.1.3](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.3)

### jti

JWT ID

@see [RFC7519#section-4.1.7](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.7)

### nbf

JWT Not Before

@see [RFC7519#section-4.1.5](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.5)

### exp

JWT Expiration Time

@see [RFC7519#section-4.1.4](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.4)

### iat

JWT Issued At

@see [RFC7519#section-4.1.6](https://www.rfc-editor.org/rfc/rfc7519#section-4.1.6)
npm package: @ga1az/google-places-client
Description: Google places client (new) interface
Author: Sergio Galaz
Latest version: 0.0.1
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# google-places-client

a simple client for the [google places api (NEW)](https://developers.google.com/maps/documentation/places/web-service/op-overview) written in typescript fully typed.

The methods are documented in the [API Reference](#api-reference) section.

## Installation

To install dependencies:

```bash
bun install
```

## Usage

First, import the PlacesClient and create an instance:

```typescript
import { PlacesClient } from "google-places-client";

const client = new PlacesClient({ apiKey: TOKEN });
```

## API Reference

### Nearby Search

A Nearby Search (New) request takes one or more place types, and returns a list of matching places within the specified area. A field mask specifying one or more data types is required. Nearby Search (New) only supports POST requests.

```typescript
await client.nearbySearch.execute(
  {
    locationRestriction: {
      circle: {
        center: {
          latitude: 37.7937,
          longitude: -122.3965,
        },
        radius: 500,
      },
    },
  },
  ["places.displayName"]
);
```

### Text Search

A Text Search (New) returns information about a set of places based on a string — for example "pizza in New York" or "shoe stores near Ottawa" or "123 Main Street". The service responds with a list of places matching the text string and any location bias that has been set.

```typescript
await client.textSearch.execute(
  {
    textQuery: "pizza in New York",
    pageSize: 5,
    locationBias: {
      circle: {
        center: { latitude: 37.7937, longitude: -122.3965 },
        radius: 500.0,
      },
    },
  },
  ["places.displayName", "places.allowsDogs"]
);
```

### Place Details

Once you have a place ID, you can request more details about a particular establishment or point of interest by initiating a Place Details (New) request. A Place Details (New) request returns more comprehensive information about the indicated place such as its complete address, phone number, user rating and reviews.

```typescript
await client.placeDetails.execute("ChIJj61dQgK6j4AR4GeTYWZsKWw", ["id"]);
```

### Autocomplete

The Autocomplete (New) service is a web service that returns place predictions and query predictions in response to an HTTP request. In the request, specify a text search string and geographic bounds that controls the search area.

```typescript
await client.autocomplete.execute({
  input: "pizza",
  languageCode: ["hi"],
});
```
npm package: @gaam/pkcs12
Description: OpenSSL wrapper to handle PKCS #12 files.
Latest version: 1.3.1

# PKCS #12

OpenSSL wrapper to handle PKCS #12 files.

## Roadmap

- [✓] **PKCS #12 Creation**: Generate PKCS #12 files from private keys and certificates with certificate authority chains
- [✓] **Encryption Support**: Full compatibility with standard OpenSSL v1 and v3 encryption algorithms
- [✓] **PKCS #12 Parsing**: Extract and decode private keys, certificates, and CA chains from existing PKCS #12 files
- [✗] **Information Reading**: Parse and display detailed PKCS #12 metadata and structure information

<!-- TODO: Verify that it is needed on production -->
## Install OpenSSL3 dependency

### Windows

```powershell
# Install vcpkg if you don't have it
git clone git@github.com:microsoft/vcpkg.git
./vcpkg/bootstrap-vcpkg.bat
./vcpkg/vcpkg install openssl:x64-windows-release

# Set environment variables
$env:OPENSSL_DIR = "{{PATH_TO_VCPKG_DIR}}\installed\x64-windows-release"
$env:OPENSSL_MODULES = "{{PATH_TO_VCPKG_DIR}}\installed\x64-windows-release\bin"
```

### MacOS

```bash
brew install openssl@3
```

### Debian and Ubuntu

```bash
sudo apt-get install pkg-config libssl-dev
```

### Alpine

```bash
apk add pkgconf openssl-dev
```

## Quick usage

### Creating a PKCS #12 file

```javascript
import { createPkcs12 } from "@gaam/pkcs12";

const pkcs = createPkcs12({
	alias: "test",
	certificatePem,
	privateKeyPem,
	password: "0123456789",
	caChainPem: [
		subCA,
		rootCA,
	],
})
```

### Extracting objects from a PKCS #12 file

```javascript
import { extractPkcs12, Pkcs12Object } from "@gaam/pkcs12";

// Extract certificate
const certificate = extractPkcs12({
	base64: pkcs12Base64,
	password: "0123456789",
	object: Pkcs12Object.Certificate
});

// Extract private key
const privateKey = extractPkcs12({
	base64: pkcs12Base64,
	password: "0123456789",
	object: Pkcs12Object.PrivateKey
});

// Extract CA chain
const caChain = extractPkcs12({
	base64: pkcs12Base64,
	password: "0123456789",
	object: Pkcs12Object.CAChain
});
```
npm package: @gaam/pkcs12-linux-x64-gnu
Description: This is the **x86_64-unknown-linux-gnu** binary for `@gaam/pkcs12`
Latest version: 1.3.1

# `@gaam/pkcs12-linux-x64-gnu`

This is the **x86_64-unknown-linux-gnu** binary for `@gaam/pkcs12`
npm package: @gaam/pkcs12-win32-arm64-msvc
Description: This is the **aarch64-pc-windows-msvc** binary for `@gaam/pkcs12`
Latest version: 1.3.1

# `@gaam/pkcs12-win32-arm64-msvc`

This is the **aarch64-pc-windows-msvc** binary for `@gaam/pkcs12`
npm package: @gaam/pkcs12-win32-x64-msvc
Description: This is the **x86_64-pc-windows-msvc** binary for `@gaam/pkcs12`
Latest version: 1.3.1

# `@gaam/pkcs12-win32-x64-msvc`

This is the **x86_64-pc-windows-msvc** binary for `@gaam/pkcs12`