# @neoskop/ethereal-secrets-client

> To add the library to your project:

Latest version **5.0.1** (published 2026-09-07) · MIT license · 0 weekly downloads

## Install

```sh
npm install @neoskop/ethereal-secrets-client
pnpm add @neoskop/ethereal-secrets-client
yarn add @neoskop/ethereal-secrets-client
bun add @neoskop/ethereal-secrets-client
```

## Health

**Score 70/100 (B)** — status: active.

Positive: has types; esm support; no vulnerabilities; recently updated; high maintenance score; high quality score.

Warnings: low downloads.

## Facts

| | |
|---|---|
| Version | 5.0.1 |
| Published | 2026-09-07 |
| First published | 2017-08-03 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Node | >= 16.15.1 |
| Dependencies | 0 |
| Unpacked size | 35.6 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | Arne Diekmann |
| Maintainers | amolnar, arnediekmann, jmetzger |

## Links

- npm: https://www.npmjs.com/package/@neoskop/ethereal-secrets-client
- npm.io page: https://npm.io/package/@neoskop/ethereal-secrets-client

## Recent versions

- 5.0.1 (latest) — 2026-09-07
- 5.0.0 — 2026-04-02
- 4.2.1 — 2026-01-15
- 4.2.0 — 2025-12-04
- 4.1.2 — 2025-12-04
- 4.1.1 — 2025-10-29
- 4.1.0 — 2025-09-17
- 4.0.10 — 2025-09-17
- 4.0.9 — 2025-03-11
- 4.0.8 — 2024-12-12
- 4.0.7 — 2024-10-18
- 4.0.6 — 2024-10-18
- 4.0.5 — 2024-09-17
- 4.0.4 — 2024-08-14
- 4.0.3 — 2024-04-19
- … 29 more at https://npm.io/package/@neoskop/ethereal-secrets-client/versions

## README

# Ethereal Secrets Client

## Usage

To add the library to your project:

```sh
$ npm i --save @neoskop/ethereal-secrets-client
```

### Local Mode

to store a value `bar` under the key `foo` encrypted in the session storage:

```typescript
const client = new EtherealSecretsClient({
  endpoint: 'http://localhost:8080/secrets',
});
await client.saveLocal('foo', 'bar');
await client.getLocal('foo'); // => bar
await client.removeLocal('foo');
```

### Remote Mode

To store a value `bar` encrypted on the server:

```typescript
const client = new EtherealSecretsClient({
  endpoint: 'http://localhost:8080/secrets',
});
const result = await client.saveRemote('foo', 'bar');
await client.getRemote(result.fragmentIdentifier); // => bar
await client.removeRemote(result.fragmentIdentifier);
```

To use a second factor:

```typescript
const client = new EtherealSecretsClient({
  endpoint: 'http://localhost:8080/secrets',
});
const result = await client.saveRemote('foo', 'bar', { secondFactor: 'baz' });
await client.getRemote(result.fragmentIdentifier, { secondFactor: 'baz' }); // => bar
await client.removeRemote(result.fragmentIdentifier, { secondFactor: 'baz' });
```

## Test suite

To run integration tests in this repository:

```sh
$ docker-compose -f docker-compose.test.yml up --abort-on-container-exit --build
```

---
_Source: https://npm.io/package/@neoskop/ethereal-secrets-client · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
