Skip to content
Gigs & hangouts

hangouts

Tonight (Hangouts) — spontaneous evening activities where dancers can mark they're out (dinner, bar, ride, floor, etc.) and see who else is joining.

Columns

ColumnTypeNullDefaultKeys
iduuid nogen_random_uuid()
PK
kindtext
dinnerbarridefloorcoffee
no—
titletext no—
timetext no—
venuetext yes—
place_idtext yes—
place_addresstext yes—
place_latdouble precision yes—
place_lngdouble precision yes—
hosttext yes—
city_slugtext no—
event_iduuid yes—
people_countinteger yes0
statustext
activeclosed
no"active"
dancer_iduuid no—
created_attimestamp yesnow()
updated_attimestamp yesnow()

Value lists come from .$type<'a' | 'b'>() in the schema — enforced in TypeScript only, not by the database.

Keys, constraints & indexes

Unique

None besides the primary key.

Indexes

No secondary indexes.

Foreign keys

  • event_id → events.id
    on delete cascade
  • dancer_id → dancers.id
    on delete no action

Referenced by

Used by

Code that reads or writes this table, found by static analysis of the tRPC routers and API handlers (including helpers they call).

Relations

Rendering diagram…

Diagram source
erDiagram
  dancers {
    uuid id PK
    text email UK
    text neon_auth_id UK
    text username UK
  }
  events {
    uuid id PK
    uuid host_profile_id FK
    uuid edited_by FK
  }
  hangout_rsvps {
    uuid id PK
    uuid hangout_id FK
    uuid dancer_id FK
  }
  hangouts {
    uuid id PK
    uuid event_id FK
    uuid dancer_id FK
  }
  dancers |o--o{ events : "edited_by"
  hangouts ||--o{ hangout_rsvps : "hangout_id"
  dancers ||--o{ hangout_rsvps : "dancer_id"
  events |o--o{ hangouts : "event_id"
  dancers ||--o{ hangouts : "dancer_id"

Defined at server/database/schema.ts:707 as hangouts.