Data Layer medium complexity backend
0
Dependencies
0
Dependents
0
Entities
0
Integrations

Description

Persistence layer for event records, storing title, date, time, duration, location, summary, and ownership metadata. Acts as the authoritative source for events referenced by sign-ups, statistics, and Bufdir-reportable aggregates.

Feature: Event Creation

event-store

Sources & reasoning

The source mobile architecture explicitly lists an Event wizard with the exact steps (title โ†’ date โ†’ time โ†’ duration โ†’ location โ†’ summary) and event-management is an MVP-tier always-available area in the toggle registry. Placed in MVP because the Add modal in the bottom nav launches event creation alongside activity creation as a Phase 1 capability.

  • Event wizard (multi-step: title โ†’ date โ†’ time โ†’ duration โ†’ location โ†’ summary)
  • event-management | Event Management | Event Creation, Event Listing, Event Sign-up
  • Bottom nav with 5 tabs: Home, Contacts, Add (modal launcher for Activity and Event wizards), Work, Notifications

Responsibilities

  • Persist event records with full schema fields and audit metadata
  • Provide query access by event ID, organization, and date range
  • Enforce schema constraints and referential integrity with org and user tables
  • Support indexing for statistics and reporting workloads
  • Expose CRUD operations to the Event Service only

Interfaces

insertEvent(event: Event): EventId
findById(eventId: string): Event
findByOrgAndDateRange(orgId: string, from: Date, to: Date): Event[]