My App
RoomKitBackend

Backend Overview

Overview of the @roomkit/nestjs package

The @roomkit/nestjs package provides a complete room booking engine for NestJS applications.

What's Included

ComponentDescription
RoomKitModuleNestJS dynamic module for registration
BookingServiceBooking creation, lifecycle management, delegation
AvailabilityServiceRoom availability search and next-slot finder
ConflictServiceOverlap detection, alternatives, priority resolution
RecurrenceServiceSeries expansion and recurring booking management
LocationServiceLocation hierarchy CRUD, tree building, alias resolution
RoomServiceRoom CRUD, equipment, accessibility, partitions
BlackoutServiceBlackout window management and impact analysis
ConfigServiceCascading configuration with hierarchy inheritance
AuditServiceBooking state-transition history and audit log queries
PriorityServicePriority tier resolution and seeding
TravelTimeServiceCross-campus travel time validation (optional)
ExamServiceExam session management with layout-aware capacity (optional)
BulkOperationServiceSemester import, date shifting, batch cancel (optional)
BookingStateMachineState transition validation
EventBusTyped domain event bus with 12 event types
Prisma AdapterComposite storage adapter for all entity types

Peer Dependencies

{
    "@nestjs/common": "^10.0.0 || ^11.0.0",
    "@nestjs/core": "^10.0.0 || ^11.0.0"
}

Optional Peer Dependencies

PackageUsed For
@prisma/clientPrisma storage adapter

On this page