open-index/open-npm huggingface dataset:
npm package: @jackdbd/plausible-client
Description: Unofficial API client for Plausible.io
Author: Giacomo Debidda
Latest version: 1.0.2

# @jackdbd/plausible-client

[![npm version](https://badge.fury.io/js/@jackdbd%2Fplausible-client.svg)](https://badge.fury.io/js/@jackdbd%2Fplausible-client)
![Snyk Vulnerabilities for npm package](https://img.shields.io/snyk/vulnerabilities/npm/@jackdbd%2Fplausible-client)

Unofficial API client for [Plausible.io](https://plausible.io/).

<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
<details><summary>Table of Contents</summary>

- [Installation](#installation)
- [API](#api)
- [Usage](#usage)

<!-- END doctoc generated TOC please keep comment here to allow auto update -->
</details>

## Installation

```sh
npm install @jackdbd/plausible-client
```

## API

[API docs generated with TypeDoc](https://jackdbd.github.io/calderone/plausible-client/)

## Usage

```js
import { makeClient } from '@jackdbd/plausible-client'
import { makeClient as makeStatsClient } from '@jackdbd/plausible-client/stats'
import { makeEleventyFetch } from '@jackdbd/plausible-client/fetch-clients/eleventy-fetch'
import { breakdown } from '@jackdbd/plausible-client/stats/api'

const main = async () => {
  const apiKey = 'YOUR-API-KEY'
  const siteId = 'YOUR-SITE-ID (i.e. domain)'

  const credentials = { apiKey, siteId }

  // options for eleventy-fetch (the fetch client used by the default API client)
  // https://www.11ty.dev/docs/plugins/fetch/#options
  const options = {
    // cache of JSON responses from the Plausible API
    directory: '.cache-plausible-json-responses',
    duration: '5s',
    verbose: true
  }

  // client for all Plausible APIs
  const plausible = makeClient(credentials, options)
  const results = await plausible.stats.breakdown()
  console.log('results', results)

  // client just for the Plausible Stats API
  const stats = makeStatsClient(credentials, options)
  const sameResults = await stats.breakdown()
  console.log('sameResults', sameResults)

  // no client, just a fetch
  const fetchClient = makeEleventyFetch(apiKey, options)
  const sameResultsOnceMore = await breakdown({ fetchClient, siteId })
  console.log('sameResultsOnceMore', sameResultsOnceMore)
}

main()
```
npm package: @jackdbd/r2-media-store
Description: Store Micropub media in a Cloudflare R2 bucket.
Author: Giacomo Debidda
Latest version: 0.2.0-canary.18

# @jackdbd/r2-media-store

[![npm version](https://badge.fury.io/js/@jackdbd%2Fr2-media-store.svg)](https://badge.fury.io/js/@jackdbd%2Fr2-media-store)
[![install size](https://packagephobia.com/badge?p=@jackdbd/r2-media-store)](https://packagephobia.com/result?p=@jackdbd/r2-media-store)
[![CodeCov badge](https://codecov.io/gh/jackdbd/rapido/graph/badge.svg?token=BpFF8tmBYS)](https://app.codecov.io/gh/jackdbd/rapido?flags%5B0%5D=r2-media-store)
[![Socket Badge](https://socket.dev/api/badge/npm/package/@jackdbd/r2-media-store)](https://socket.dev/npm/package/@jackdbd/r2-media-store)

Store Micropub media in a Cloudflare R2 bucket.

- [Installation](#installation)
- [Docs](#docs)
- [Dependencies](#dependencies)
- [License](#license)

## Installation

```sh
npm install @jackdbd/r2-media-store
```

## Docs

[Docs generated by TypeDoc](https://jackdbd.github.io/rapido/r2-media-store/0.2.0-canary.18)

## Dependencies

| Package | Version |
|---|---|
| [@aws-sdk/client-s3](https://www.npmjs.com/package/@aws-sdk/client-s3) | `^3.740.0` |
| [@jackdbd/micropub](https://www.npmjs.com/package/@jackdbd/micropub) | `0.2.0-canary.13` |
| [mime](https://www.npmjs.com/package/mime) | `^4.0.6` |
| [nanoid](https://www.npmjs.com/package/nanoid) | `^5.0.9` |

## License

&copy; 2024 - 2025 [Giacomo Debidda](https://www.giacomodebidda.com/) // [MIT License](https://spdx.org/licenses/MIT.html)
npm package: @jackdbd/schemas
Description: JSON schemas with Ajv (JSON schema validator)
Author: Giacomo Debidda
Latest version: 1.1.2

# @jackdbd/schemas

A few [joi](https://github.com/hapijs/joi) schemas I share across projects.

<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
<details><summary>Table of Contents</summary>

- [Installation](#installation)
- [API](#api)

<!-- END doctoc generated TOC please keep comment here to allow auto update -->
</details>

## Installation

```sh
npm install @jackdbd/schemas
```

## API

[API docs generated with TypeDoc](https://jackdbd.github.io/calderone/schemas/)
npm package: @jackdbd/secret-manager-utils
Description: Utilities for Secret Manager
Author: Giacomo Debidda
Latest version: 1.2.0

# @jackdbd/secret-manager-utils

[![npm version](https://badge.fury.io/js/@jackdbd%2Ffirestore-utils.svg)](https://badge.fury.io/js/@jackdbd%2Fsecret-manager-utils)
![Snyk Vulnerabilities for npm package](https://img.shields.io/snyk/vulnerabilities/npm/@jackdbd%2Fsecret-manager-utils)

Utility functions to work with [Secret Manager](https://cloud.google.com/secret-manager).

<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
<details><summary>Table of Contents</summary>

- [Installation](#installation)
- [Why?](#why)
- [API](#api)

<!-- END doctoc generated TOC please keep comment here to allow auto update -->
</details>

## Installation

```sh
npm install @jackdbd/secret-manager-utils
```

> ⚠️ **Warning:**
> 
> This library declares [@google-cloud/secret-manager](https://www.npmjs.com/package/@google-cloud/secret-manager) and [debug](https://www.npmjs.com/package/debug) as peer dependencies.

## Why?

I find the Secret Manager client a bit awkward to work with, so I decided to make a tiny set of utilities for my needs.

## API

[API docs generated with TypeDoc](https://jackdbd.github.io/calderone/secret-manager-utils/)
npm package: @jackdbd/sqlite-utils
Description: Utility functions to work with SQLite
Author: Giacomo Debidda
Latest version: 1.1.1

# @jackdbd/sqlite-utils

Utility functions to work with SQLite.

<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
<details><summary>Table of Contents</summary>

- [Installation](#installation)
- [Usage](#usage)
- [API](#api)

<!-- END doctoc generated TOC please keep comment here to allow auto update -->
</details>

## Installation

```sh
npm install @jackdbd/sqlite-utils
```

> ⚠️ **Warning:**
> 
> This library declares [better-sqlite3](https://github.com/WiseLibs/better-sqlite3) as peer dependency.

## Usage

You can import the top-level module:

```ts
import {
  bulkInsert,
  foreignKeys,
  pragmaDict,
  tableInfo
} from '@jackdbd/sqlite-utils'
```

or a specific ES module:

```ts
import {
  foreignKeys,
  pragmaDict,
  tableInfo
} from '@jackdbd/sqlite-utils/pragmas'

import { bulkInsert } from '@jackdbd/sqlite-utils/transactions'
```

## API

[API docs generated with TypeDoc](https://jackdbd.github.io/calderone/sqlite-utils/)
npm package: @jackdbd/stripe-utils
Description: Utility functions to work with Stripe
Author: Giacomo Debidda
Latest version: 1.1.0

# @jackdbd/stripe-utils

Utility functions to work with Stripe.

<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
<details><summary>Table of Contents</summary>

- [Installation](#installation)
- [API](#api)

<!-- END doctoc generated TOC please keep comment here to allow auto update -->
</details>

## Installation

```sh
npm install @jackdbd/stripe-utils
```

> ⚠️ **Hic sunt dracones:**
> 
> ⚡ This library is very early stage. Expect the API to break at any time.

## API

[API docs generated with TypeDoc](https://jackdbd.github.io/calderone/stripe-utils/)
npm package: @jackdbd/telegram-text-messages
Description: Factory functions that return HTML-formatted strings to use in Telegram messages
Author: Giacomo Debidda
Latest version: 1.2.0

# @jackdbd/telegram-text-messages

[![npm version](https://badge.fury.io/js/@jackdbd%2Ftelegram-text-messages.svg)](https://badge.fury.io/js/@jackdbd%2Ftelegram-text-messages)
![Snyk Vulnerabilities for npm package](https://img.shields.io/snyk/vulnerabilities/npm/@jackdbd%2Ftelegram-text-messages)

Factory functions that return HTML-formatted strings to use in the `text` field of the [sendMessage](https://core.telegram.org/bots/api#sendmessage) method of the Telegram Bot API.

<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
<details><summary>Table of Contents</summary>

- [Installation](#installation)
- [API](#api)

<!-- END doctoc generated TOC please keep comment here to allow auto update -->
</details>

## Installation

```sh
npm install @jackdbd/telegram-text-messages
```

## API

[Documentation generated by TypeDoc](https://jackdbd.github.io/calderone/telegram-text-messages/)

[API reference generated by API extractor + API documenter](./api-docs/index.md)
npm package: @jackdbd/text-to-audio-asset
Description: Generate an audio asset from a text.
Author: Giacomo Debidda
Latest version: 1.2.0

# @jackdbd/text-to-audio-asset

<!-- [![npm version](https://badge.fury.io/js/@jackdbd%2Ftext-to-audio-asset.svg)](https://badge.fury.io/js/@jackdbd%2Ftext-to-audio-asset)
[![install size](https://packagephobia.com/badge?p=@jackdbd/text-to-audio-asset)](https://packagephobia.com/result?p=@jackdbd/text-to-audio-asset)
[![CodeCov badge](https://codecov.io/gh/jackdbd/undici/graph/badge.svg?token=BpFF8tmBYS)](https://app.codecov.io/gh/jackdbd/undici?flags%5B0%5D=text-to-audio-asset)
[![Socket Badge](https://socket.dev/api/badge/npm/package/@jackdbd/text-to-audio-asset)](https://socket.dev/npm/package/@jackdbd/text-to-audio-asset) -->

Generate an audio asset from a text.

- [Installation](#installation)
- [Usage](#usage)
- [Troubleshooting](#troubleshooting)
- [Dependencies](#dependencies)
- [License](#license)

## Installation

```sh
npm install @jackdbd/text-to-audio-asset
```

**Note**: this library was tested on Node.js >=18. It might work on other Node.js versions though.

## Usage

TODO

## Troubleshooting

This plugin uses the [debug](https://github.com/debug-js/debug) library for logging.
You can control what's logged using the `DEBUG` environment variable.

For example, if you set your environment variables in a `.envrc` file, you can do:

```sh
# print all logging statements
export DEBUG=11ty-plugin:*
```

## Dependencies

| Package | Version |
|---|---|
| [zod](https://www.npmjs.com/package/zod) | `^3.23.0` |
| [zod-validation-error](https://www.npmjs.com/package/zod-validation-error) | `^3.1.0` |

> ⚠️ **Peer Dependencies**
>
> This package defines 6 peer dependencies.

| Peer | Version range |
|---|---|
| `@11ty/eleventy` | `>=2.0.0 or 3.0.0-alpha.6` |
| `@aws-sdk/client-s3` | `>=3.0.0` |
| `@aws-sdk/lib-storage` | `>=3.0.0` |
| `@google-cloud/storage` | `>=7.0.0` |
| `@google-cloud/text-to-speech` | `>=5.0.0` |
| `debug` | `>=4.0.0` |

## License

&copy; 2022 - 2024 [Giacomo Debidda](https://www.giacomodebidda.com/) // [MIT License](https://spdx.org/licenses/MIT.html)
npm package: @jackdbd/utils
Description: Miscellaneous utility functions
Author: Giacomo Debidda
Latest version: 1.4.0

# @jackdbd/utils

[![npm version](https://badge.fury.io/js/@jackdbd%2Futils.svg)](https://badge.fury.io/js/@jackdbd%2Futils)
![Snyk Vulnerabilities for npm package](https://img.shields.io/snyk/vulnerabilities/npm/@jackdbd%2Futils)

Miscellaneous utility functions.

<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
<details><summary>Table of Contents</summary>

- [Installation](#installation)
- [API](#api)

<!-- END doctoc generated TOC please keep comment here to allow auto update -->
</details>

## Installation

```sh
npm install @jackdbd/utils
```

## API

[API docs generated with TypeDoc](https://jackdbd.github.io/calderone/utils/)
npm package: @jackdbd/zod-schemas
Description: Some [Zod](https://github.com/colinhacks/zod) schemas I reuse across projects.
Author: Giacomo Debidda
Latest version: 2.2.0

# Zod schemas

[![npm version](https://badge.fury.io/js/@jackdbd%2Fzod-schemas.svg)](https://badge.fury.io/js/@jackdbd%2Fzod-schemas)
![CI workflow](https://github.com/jackdbd/zod-schemas/actions/workflows/ci.yaml/badge.svg)
![Release to npmjs.com workflow](https://github.com/jackdbd/zod-schemas/actions/workflows/release-to-npmjs.yaml/badge.svg)
[![Conventional Commits](https://img.shields.io/badge/Conventional%20Commits-1.0.0-%23FE5196?logo=conventionalcommits&logoColor=white)](https://conventionalcommits.org)
[![install size](https://packagephobia.com/badge?p=@jackdbd/zod-schemas)](https://packagephobia.com/result?p=@jackdbd/zod-schemas)
[![Socket Badge](https://socket.dev/api/badge/npm/package/@jackdbd/zod-schemas)](https://socket.dev/npm/package/@jackdbd/zod-schemas)

Some [Zod](https://github.com/colinhacks/zod) schemas I reuse across projects.

<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
<details><summary>Table of Contents</summary>

- [Installation](#installation)
- [Development](#development)
- [Docs](#docs)

<!-- END doctoc generated TOC please keep comment here to allow auto update -->
</details>

## Installation

```sh
npm install @jackdbd/zod-schemas
```

## Development

Launch both the TypeScript compiler and the [Node.js test runner](https://nodejs.org/api/test.html) in watch mode:

```sh
npm run dev
```

Build all TypeScript files with the TypeScript compiler, and all docs with [TypeDoc](https://github.com/TypeStrong/typedoc) and [api-extractor + api-documenter](https://api-extractor.com/pages/setup/generating_docs/):

```sh
npm run build
```

You can also build the TypeScript files and the docs separately:

```sh
npm run build:ts
npm run docs
```

Whenever you change the public API of this project, you need to run api-extractor with the `--local` flag:

```sh
npx api-extractor run --config ./config/api-extractor.json --verbose --local
```

## Docs

Preview the documentation generated by TypeDoc:

```sh
npm run serve:docs
```

Note: it doesn't make much sense to preview the API docs generated by api-extractor + api-documenter. They are just a bunch of markdown files.
npm package: @jackdevau/up-api
Description: TypeScript SDK for the Up Bank API.
Latest version: 1.0.1

# @jackdevau/up-api

TypeScript SDK for the [Up Bank API](https://developer.up.com.au/).

## Install

```bash
pnpm add @jackdevau/up-api
```

## Docs

Checkout the typedoc [here](https://up-api-docs.jackpettit.dev/)

## Requirements

- Node.js 18+ (uses native `fetch`)
- An Up Personal Access Token

Create a token in the Up app, then store it in an environment variable:

```bash
export UP_API_TOKEN="up:yeah:..."
```

## Quick Start

```ts
import { UpClient } from "@jackdevau/up-api";

const client = new UpClient(process.env.UP_API_TOKEN!);
const ping = await client.utils.ping();
console.log(ping.meta.statusEmoji);
```

## API Coverage

| Area | Up API endpoints | SDK methods |
| --- | --- | --- |
| Utilities | `GET /util/ping` | `client.utils.ping()` |
| Accounts | `GET /accounts`<br/>`GET /accounts/{id}`<br/>`GET /accounts/{id}/transactions` | `client.accounts.list()`<br/>`client.accounts.retrieve(id)`<br/>`client.accounts.listTransactionsByAccount(...)` |
| Transactions | `GET /transactions`<br/>`GET /transactions/{id}` | `client.transactions.list(...)`<br/>`client.transactions.listAll(...)`<br/>`client.transactions.retrieve(id)` |
| Categories | `GET /categories`<br/>`GET /categories/{id}`<br/>`PATCH /transactions/{id}/relationships/category` | `client.categories.list(...)`<br/>`client.categories.retrieveCategory(id)`<br/>`client.categories.categorizeTransaction(...)` |
| Tags | `GET /tags`<br/>`POST /transactions/{id}/relationships/tags`<br/>`DELETE /transactions/{id}/relationships/tags` | `client.tags.list(...)`<br/>`client.tags.addToTransaction(...)`<br/>`client.tags.removeFromTransaction(...)` |
| Attachments | `GET /attachments`<br/>`GET /attachments/{id}` | `client.attachments.list(...)`<br/>`client.attachments.retrieve(id)` |
| Webhooks | `GET /webhooks`<br/>`POST /webhooks`<br/>`GET /webhooks/{id}`<br/>`DELETE /webhooks/{id}`<br/>`POST /webhooks/{id}/ping`<br/>`GET /webhooks/{id}/logs` | `client.webhooks.list(...)`<br/>`client.webhooks.create(...)`<br/>`client.webhooks.retrieve(id)`<br/>`client.webhooks.delete(id)`<br/>`client.webhooks.ping(webhookId)`<br/>`client.webhooks.logs(webhookId, ...)` |

## Errors

- `RateLimitError` for `429` responses.
- `UpApiError` for other non-2xx responses.
- `isRateLimitError(...)` and `isUpApiError(...)` are exported type guards.

## Types

Request/response types are exported from the package root.