Skip to content

🧾 Accounts Context β€” Entity MapΒΆ

Last updated: 2025-10-09 (Europe/Paris)

This diagram highlights the primary domain objects managed by Accounts and how they relate to other contexts (Auth, Creators). Use it when reasoning about ownership boundaries, event flows, or API stitching.


πŸ”— Relationship OverviewΒΆ

%%{init: {'themeVariables': {'fontSize': '15px'}, 'class': {'useMaxWidth': true}}}%%
classDiagram
    direction LR

    class User {
        +id
        +name
        +email
    }

    class Organization {
        +id
        +name
        +slug
    }

    class Membership {
        +role
        +status
        +permissions
    }

    class Invitation {
        +email
        +role
        +status
    }

    class Role {
        +name
        +guard_name
    }

    class Permission {
        +name
        +guard_name
    }

    class Artist {
        +id
        +name
    }

    User "1" -- "many" Membership : joined as
    Organization "1" -- "many" Membership : enrolls
    User "1" -- "many" Invitation : sends
    Organization "1" -- "many" Invitation : issues

    Membership ..> Role : "assigns Spatie role (team scoped)"
    Role "1" --> "many" Permission : "aggregates"

    Membership ..> Artist : "Label members create/manage roster (Creators)"
    Invitation ..> Artist : "Invites collaborators (Creators)"

    note for Role "Role/Permission tables live in Auth context"
    note for Artist "Artist entities live in Creators context"

  • docs/contexts/accounts/models.md β€” Column-level schema for users, organizations, memberships.
  • docs/contexts/auth/models.md β€” Spatie tables tied to Accounts team mode.
  • docs/contexts/creators/entity-diagram.md β€” High-level Creators relationships.