How echodot07/onepms works
OnePMS is a hotel property-management system: staff use its React screens to manage reservations, rooms, guests, payments, operations, and reporting through a Fastify API backed by PostgreSQL. The central workflow is reservation and guest management, followed by stay/folio and payment handling, with room operations and close-day audit/reporting as connected hotel workflows. The README documents additional capabilities including device and document workflows, imports, and channel distribution. Edges are limited to relationships shown in excerpts, source-index references, or README statements; unsampled route internals are not inferred.
Main entry points: schema PostgreSQL schema · app.ts API application · App.tsx PMS screens · auth.ts Authentication routes
Components 21
Staff interface
- PMS screens
apps/web/src/App.tsx - Web API client
apps/web/src/api.ts - Sign-in screens
apps/web/src/pages/Auth.tsx - Channel manager
apps/web/src/pages/ChannelManager.tsx
PMS services
- API application
apps/api/src/app.ts - Authentication routes
apps/api/src/routes/auth.ts - Sessions and permissions
apps/api/src/auth.ts - Change history
apps/api/src/audit.ts - Reservations and stays
apps/api/src/routes/reservations.ts - Folios and billing
apps/api/src/domain/billing.ts - Night audit reports
apps/api/src/domain/auditReports.ts - Channel distribution
apps/api/src/domain/channels.ts - Guest documents
apps/api/src/domain/documents.ts
External integrations
- SHR CRS integration
apps/api/src/integrations/shr - Shift4 payments
apps/api/src/integrations/shift4/client.ts - Front-desk devices
apps/api/src/integrations/devices.ts
Hotel data
- PostgreSQL schema
packages/db/src/schema - Reservation records
packages/db/src/schema/reservations.ts - Hotel and access records
packages/db/src/schema/org.ts - Finance records
packages/db/src/schema/finance.ts
Other components
- Hotel staff
Connections 25
- Hotel staff → PMS screens: uses
README.md - PMS screens → Sign-in screens: renders
apps/web/src/App.tsx - PMS screens → Channel manager: renders
apps/web/src/App.tsx - Channel manager → Web API client: requests data
apps/web/src/pages/ChannelManager.tsx - PMS screens → Web API client: loads data
apps/web/src/App.tsx - API application → Authentication routes: registers
apps/api/src/app.ts - API application → Sessions and permissions: loads auth
apps/api/src/app.ts - Authentication routes → Sessions and permissions: authenticates
apps/api/src/routes/auth.ts - Authentication routes → Change history: records changes
apps/api/src/routes/auth.ts - API application → Reservations and stays: registers
apps/api/src/app.ts - API application → Channel distribution: registers routes
apps/api/src/app.ts - Channel distribution → PostgreSQL schema: reads and queues
- Channel distribution → SHR CRS integration: queues updates
- Reservations and stays → Reservation records: persists
- Folios and billing → Finance records: persists
- Night audit reports → Finance records: posts and archives
- Shift4 payments → PostgreSQL schema: logs transactions
- API application → PostgreSQL schema: uses database
apps/api/src/app.ts - PostgreSQL schema → Reservation records: defines
packages/db/src/schema/reservations.ts - PostgreSQL schema → Hotel and access records: defines
packages/db/src/schema/org.ts - PostgreSQL schema → Finance records: defines
packages/db/src/schema/finance.ts - Hotel staff → Front-desk devices: uses
README.md - Hotel staff → Guest documents: creates and signs
README.md - Hotel staff → Night audit reports: reviews reports
README.md - Shift4 payments → Hotel staff: processes payments for
README.md