@breadstone/archipel-platform-database
v0.0.32
Published
Prisma ORM integration with PostgreSQL, repository base classes, query patterns, and pagination for NestJS.
Maintainers
Readme
@breadstone/archipel-platform-database
Prisma-based database access layer with repositories, query builders, and cursor pagination for NestJS.
Features
- Prisma integration —
PrismaServicewrapsPrismaClientwith lifecycle management - Repository base —
RepositoryBasewith typed query execution pattern - Cursor pagination —
CursorPaginationfor efficient large-dataset traversal - Offset pagination — Classic
Paginationwith total count and page metadata - Health checks —
DatabaseHealthIndicatorfor readiness probes (separate/healthsubpath) - Transaction support —
PrismaServiceexposes$transactionfor multi-step writes
⚠️ Environment Variables
| Variable | Required | Default | Description |
| -------------------- | -------- | ------- | ------------------------------------ |
| DB_AUTO_CONNECTION | no | - | Automatically connect on module init |
Quick Start
import { DatabaseModule, PrismaService } from '@breadstone/archipel-platform-database';
// Health indicator (optional)
import { DatabaseHealthIndicator } from '@breadstone/archipel-platform-database/health';
@Module({
imports: [DatabaseModule],
})
export class AppModule {}Error Handling
| Error Class | When Thrown |
| ----------------- | -------------------------------------- |
| RepositoryError | Database query or transaction failures |
Lifecycle
- Startup (
OnModuleInit):PrismaServiceconnects to the database. - Shutdown (
OnModuleDestroy):PrismaServicedisconnects gracefully.
Peer Dependencies
| Package | Required | Notes |
| -------------------------------------- | -------- | ----------------------------- |
| @nestjs/common | Yes | NestJS core |
| @nestjs/terminus | No | Required for health indicator |
| @breadstone/archipel-platform-health | No | Required for health indicator |
| @prisma/client | Yes | Prisma ORM client |
| express | Yes | HTTP server types |
Documentation
📖 Database Guide: .docs/guides/database-setup.md
Development
# Build
yarn nx build platform-database
# Test
yarn nx test platform-database
# Lint
yarn nx lint platform-database