---
title: "パッケージリファレンス"
description: "UniKVS のパッケージの一覧と案内です。"
---

UniKVS は本体パッケージと、プラグインと補助のパッケージから構成されます。本体の `unikvs` 以外は、目的に合わせてインストールします。

インストール方法は[インストール](/unikvs/how-to/installation)を、保存先の選び方は[ストレージ比較](/unikvs/reference/comparison)を参照してください。

## 本体 [#core]

**[UniKVS](/unikvs/packages/unikvs)**

設定ビルダーと KVS クライアントの本体です。

## 共有 [#shared]

すべてのパッケージで共有される基盤です。

**[@unikvs/core](/unikvs/packages/core)**

全パッケージで共有する型とエラーの基盤です。

**[@unikvs/utils](/unikvs/packages/utils)**

プラグイン実装者向けの共有関数群です。

**[@unikvs/testing](/unikvs/packages/testing)**

プラグインのテスト用コンテキストとヘルパーです。

## ストレージ [#storage]

データの保存先を提供します。動作環境ごとに分かれています。

**[@unikvs/memory](/unikvs/packages/memory)**

メモリー上に任意のデータを保存します。

**[@unikvs/http](/unikvs/packages/http)**

HTTP サーバーを保存先として扱います。

**[@unikvs/null](/unikvs/packages/null)**

何も保存しない送り先として使います。

**[@unikvs/lru-cache](/unikvs/packages/lru-cache)**

件数や容量の上限付きでデータをメモリーに保存します。

**[@unikvs/opfs](/unikvs/packages/opfs)**

ブラウザーの OPFS に保存します。

**[@unikvs/indexeddb](/unikvs/packages/indexeddb)**

ブラウザーの IndexedDB に保存します。

**[@unikvs/localstorage](/unikvs/packages/localstorage)**

ブラウザーの Local Storage に保存します。

**[@unikvs/session-storage](/unikvs/packages/session-storage)**

ブラウザーの sessionStorage に文字列を保存します。

**[@unikvs/fs.node](/unikvs/packages/fs-node)**

Node.js のローカルファイルシステムに保存します。

**[@unikvs/s3.node](/unikvs/packages/s3-node)**

S3 互換のオブジェクトストレージに保存します。

**[@unikvs/redis.node](/unikvs/packages/redis-node)**

Redis に保存します。

**[@unikvs/fs.bun](/unikvs/packages/fs-bun)**

Bun のローカルファイルシステムに保存します。

**[@unikvs/s3.bun](/unikvs/packages/s3-bun)**

Bun で S3 互換のオブジェクトストレージに保存します。

**[@unikvs/redis.bun](/unikvs/packages/redis-bun)**

Bun の Redis クライアントを使って Redis に保存します。

**[@unikvs/valkey](/unikvs/packages/valkey)**

Valkey に保存します。

**[@unikvs/memcached](/unikvs/packages/memcached)**

Memcached に保存します。

**[@unikvs/etcd](/unikvs/packages/etcd)**

etcd に保存します。

**[@unikvs/cache-storage](/unikvs/packages/cache-storage)**

ブラウザーの Cache Storage に保存します。

**[@unikvs/cookies](/unikvs/packages/cookies)**

Cookie を保存先として扱います。

**[@unikvs/cloudflare-kv](/unikvs/packages/cloudflare-kv)**

Cloudflare KV に保存します。

**[@unikvs/cloudflare-r2](/unikvs/packages/cloudflare-r2)**

Cloudflare R2 に保存します。

**[@unikvs/cloudflare-cache](/unikvs/packages/cloudflare-cache)**

Cloudflare Cache API に保存します。

**[@unikvs/vercel-blob](/unikvs/packages/vercel-blob)**

Vercel Blob に保存します。

**[@unikvs/vercel-runtime-cache](/unikvs/packages/vercel-runtime-cache)**

Vercel ランタイムのキャッシュに保存します。

**[@unikvs/retry](/unikvs/packages/retry)**

一時的な失敗を再試行するラッパーです。

**[@unikvs/soft-delete](/unikvs/packages/soft-delete)**

削除操作を論理削除として扱うラッパーです。

## ミドルウェア [#middleware]

値を透過的に変換します。変換内容ごとに分かれています。

**[@unikvs/json](/unikvs/packages/json)**

値を JSON に、ストリームでは JSON Lines に変換します。

**[@unikvs/superjson](/unikvs/packages/superjson)**

Date・Map・Set・BigInt・undefined を保持したまま SuperJSON で変換します。

**[@unikvs/cbor](/unikvs/packages/cbor)**

値を CBOR に、ストリームでは CBOR シーケンスに変換します。

**[@unikvs/v8-serde](/unikvs/packages/v8-serde)**

Node.js の v8.serialize で値を高速にシリアライズします。

**[@unikvs/base64](/unikvs/packages/base64)**

バイト列を Base64 のテキストに変換します。

**[@unikvs/base64url](/unikvs/packages/base64url)**

バイト列を URL セーフな Base64url に変換します。

**[@unikvs/hex](/unikvs/packages/hex)**

バイト列を 16 進数文字列 (Hex) に変換します。

**[@unikvs/compression](/unikvs/packages/compression)**

gzip・deflate・deflate-raw による圧縮と展開を行います。

**[@unikvs/checksum](/unikvs/packages/checksum)**

MD5・SHA-1・SHA-224・SHA-256・SHA-384・SHA-512 の検証を行います。

**[@unikvs/zstd.wasm](/unikvs/packages/zstd-wasm)**

WASM 版 zstd による圧縮と展開を行います。

**[@unikvs/zstd.node](/unikvs/packages/zstd-node)**

Node.js の zstd による圧縮と展開を行います。

**[@unikvs/zstd.bun](/unikvs/packages/zstd-bun)**

Bun の zstd による圧縮と展開を行います。

**[@unikvs/brotli.node](/unikvs/packages/brotli-node)**

Node.js の Brotli による圧縮と展開を行います。

**[@unikvs/brotli.bun](/unikvs/packages/brotli-bun)**

Bun の Brotli による圧縮と展開を行います。

**[@unikvs/brotli.wasm](/unikvs/packages/brotli-wasm)**

WASM 版 Brotli による圧縮と展開を行います。

## 開発支援 [#dev]

挙動の観測と制御に寄るパッケージです。

**[@unikvs/debug](/unikvs/packages/debug)**

読み書きの操作とデータのデバッグ情報をログに記録します。

**[@unikvs/passthrough](/unikvs/packages/passthrough)**

データを何も変換せずそのまま透過させます。

**[@unikvs/tap](/unikvs/packages/tap)**

データを透過させながら、コンテキストを受け取るコールバックを実行します。

**[@unikvs/allow-repair](/unikvs/packages/allow-repair)**

read-repair の書き戻しの可否を制御します。

**[@unikvs/key-prefix](/unikvs/packages/key-prefix)**

すべてのキーに固定文字列を付与します。

**[@unikvs/writeonly](/unikvs/packages/writeonly)**

既存のストレージを書き込み専用にします。

**[@unikvs/readonly](/unikvs/packages/readonly)**

既存のストレージを読み取り専用にします。

**[@unikvs/expiry](/unikvs/packages/expiry)**

有効期限が付いた値が期限内かを検証します。

**[@unikvs/ttl](/unikvs/packages/ttl)**

値に有効期限を付与して管理します。

**[@unikvs/rate-limit](/unikvs/packages/rate-limit)**

操作の実行頻度を制限します。

**[@unikvs/metrics](/unikvs/packages/metrics)**

操作のメトリクスを収集します。

**[@unikvs/tracing](/unikvs/packages/tracing)**

操作のトレースを記録します。
