stable
ssh
SFTP-over-SSH store for noy-db, key-only auth — any Linux/macOS server with sshd becomes a backend.
@noy-db/to-ssh·pnpm add @noy-db/to-sshRemote encrypted document storage over SSH.
| Shape | record |
| Atomic CAS | ✗ |
| Locality | remote |
| Speed | slow |
| Persistence | durable |
What it does
Stores encrypted envelopes over SFTP. Any Linux/macOS server with sshd running
becomes a noy-db backend; leverages your existing ~/.ssh keys or ssh-agent.
Key-only auth — no passwords.
Notes
casAtomic: false— key-only auth, no compare-and-swap primitive over SFTP.- Record shape, one file per record.
- Factory:
toSsh(options: SshStoreOptions).
Store-locator descriptor
See store-locator descriptors for the general model.
kind: 'ssh', class: 'lan'. address is { host?, port?, path? }: path
maps to remotePath; host and port are identity-only, not consumed by
the factory — the connection already carries them. options is { name? }.
binding.client is required (an SftpHandle, mapped onto the store's
own sftp option) — this store has no client library of its own;
resolve() without it throws.
import { sshStoreDescriptor, registerSshStore } from '@noy-db/to-ssh'
const descriptor = sshStoreDescriptor({ host: 'server.example.com', port: 22, path: 'noydb' })