flowchart TD
    subgraph "GraphQL API"
        direction LR
        subgraph "Queries"
            Q1[getEvents]
            Q2[getEventDetails]
            Q3[getInvoices]
            Q4[getInvoiceDetails]
            Q5[getNotifications]
            Q6[getNotificationDetails]
            Q7[getProfile]
            Q8[getAssignedStaff]
        end

        subgraph "Mutations"
            M1[createEvent]
            M2[updateProfile]
            M3[rateStaff]
            M4[clockIn]
            M5[clockOut]
            M6[uploadProfilePicture]
        end
    end

    subgraph "Firebase"
        direction LR
        subgraph "Firestore Collections"
            FS1[events]
            FS2[invoices]
            FS3[notifications]
            FS4[users]
        end

        subgraph "Firebase Storage"
            FB1[Profile Pictures]
        end
    end

    Q1 --> FS1
    Q2 --> FS1
    Q3 --> FS2
    Q4 --> FS2
    Q5 --> FS3
    Q6 --> FS3
    Q7 --> FS4
    Q8 --> FS1
    Q8 --> FS4

    M1 --> FS1
    M2 --> FS4
    M3 --> FS1
    M3 --> FS4
    M4 --> FS1
    M5 --> FS1
    M6 --> FB1
