# pg-chronicle > PostgreSQL audit trails with automated S3 archival. ## Docs - [Quick Start](https://github.com/TimMikeladze/pg-chronicle/blob/main/README.md#quick-start) - [Installation](https://github.com/TimMikeladze/pg-chronicle/blob/main/README.md#installation): pg, hono, and the S3/Parquet libraries ship as regular dependencies — nothing else to install. - [Examples](https://github.com/TimMikeladze/pg-chronicle/blob/main/README.md#examples): Working examples in examples/. Each creates a temporary database, runs against real PostgreSQL, and cleans up after itself. - [How It Works](https://github.com/TimMikeladze/pg-chronicle/blob/main/README.md#how-it-works): pg-chronicle uses PostgreSQL's own trigger system to capture every change. - [Architecture](https://github.com/TimMikeladze/pg-chronicle/blob/main/README.md#architecture) - [Why Not pgaudit?](https://github.com/TimMikeladze/pg-chronicle/blob/main/README.md#why-not-pgaudit): PostgreSQL has no shortage of ways to watch a table. Most of them answer a different question than "what did this row look like before, who changed it, and can I… - [API Reference](https://github.com/TimMikeladze/pg-chronicle/blob/main/README.md#api-reference) - [Server & REST API](https://github.com/TimMikeladze/pg-chronicle/blob/main/README.md#server--rest-api): A ready-made Hono server exposing the audit trail over HTTP, with JWT or cron-secret auth on every endpoint that reads data. - [Dashboard](https://github.com/TimMikeladze/pg-chronicle/blob/main/README.md#dashboard): A ready-to-deploy Next.js UI for browsing, searching and reverting the audit trail. - [Deployment](https://github.com/TimMikeladze/pg-chronicle/blob/main/README.md#deployment): Click the button below to get the dashboard and the REST API as one Vercel project, wire the pg-chronicle/next route handler into an app you already have, or run… - [Archiver](https://github.com/TimMikeladze/pg-chronicle/blob/main/README.md#archiver): Move old audit rows to S3 as compressed Parquet files. Hands off to Orchestrator for scheduling and PgChronicleArchiver for the upload + delete lifecycle. - [Environment Variables](https://github.com/TimMikeladze/pg-chronicle/blob/main/README.md#environment-variables) - [Production Caveats](https://github.com/TimMikeladze/pg-chronicle/blob/main/README.md#production-caveats): Knobs and trade-offs, not bugs. - [Error Handling](https://github.com/TimMikeladze/pg-chronicle/blob/main/README.md#error-handling): Typed error classes, all extending PgChronicleError. - [Limitations](https://github.com/TimMikeladze/pg-chronicle/blob/main/README.md#limitations) - [Contributing](https://github.com/TimMikeladze/pg-chronicle/blob/main/README.md#contributing): Everything above installs the published package. To work on the library itself — the local PostgreSQL and MinIO the tests need, the dashboard, the landing page —… ## Links - [Full README](https://github.com/TimMikeladze/pg-chronicle/blob/main/README.md) - [GitHub](https://github.com/TimMikeladze/pg-chronicle) - [npm](https://www.npmjs.com/package/pg-chronicle)