Skip to main content

Built and signed on GitHub Actions

Works with
This package works with Node.js, Deno, BunIt is unknown whether this package works with Cloudflare Workers
It is unknown whether this package works with Cloudflare Workers
This package works with Node.js
This package works with Deno
This package works with Bun
•JSR Score100%•
License
MIT
•
Downloads171/wk
•
Published17 hours ago (2.4.1)

PostgreSQL drivers for Fedify

@fedify/postgres: PostgreSQL drivers for Fedify

JSR npm

This package provides Fedify's KvStore and MessageQueue implementations for PostgreSQL:

import { createFederation } from "@fedify/fedify";
import { PostgresKvStore, PostgresMessageQueue } from "@fedify/postgres";
import postgres from "postgres";

const sql = postgres("postgresql://user:password@localhost/dbname");

const federation = createFederation({
  kv: new PostgresKvStore(sql),
  queue: new PostgresMessageQueue(sql),
});

PostgresKvStore uses a crash-safe logged table by default. For transient data where losing the table contents after a PostgreSQL crash is acceptable, pass { unlogged: true } as its second constructor argument.

When a store created by an earlier version still uses an unlogged table, its next initialization converts that table to logged storage. PostgreSQL rewrites the table and takes an ACCESS EXCLUSIVE lock during this one-time migration, so schedule the upgrade accordingly for a large or busy table.

Installation

deno add jsr:@fedify/postgres  # Deno
npm  add     @fedify/postgres  # npm
pnpm add     @fedify/postgres  # pnpm
yarn add     @fedify/postgres  # Yarn
bun  add     @fedify/postgres  # Bun
Built and signed on
GitHub Actions

Report package

Please provide a reason for reporting this package. We will review your report and take appropriate action.

Please review the JSR usage policy before submitting a report.

Add Package

deno add jsr:@fedify/postgres

Import symbol

import * as postgres from "@fedify/postgres";
or

Import directly with a jsr specifier

import * as postgres from "jsr:@fedify/postgres@^2.4.1";