Skip to main content

How Boardssey is Structured

Explains the mental model of Boardssey's core concepts: accounts, teams, games, and projects, and how they relate to each other

Updated over a week ago

This article explains the conceptual structure of Boardssey, focusing on how accounts, teams, games, and projects relate to one another. It covers the hierarchical relationships between these entities and the permission system that governs access.

This article does not cover step-by-step workflows, user interface navigation, or specific feature functionality.

How It Works

Team Accounts

Team accounts are the primary container for all work data in Boardssey. All games and projects belong to team accounts. Team accounts serve as the central workspace where professional board game design work takes place.

Team accounts have:

  • A unique slug identifier

  • A subscription tied directly to the team account

  • Multiple members who can be assigned different roles and permissions

  • A primary owner who manages the team

Subscriptions are associated with team accounts. The subscription determines the features and capabilities available to the team account.

Teams

Teams are team accounts—the collaborative workspaces where all work happens. A team account can have multiple members, and each member is a personal account with a specific role and set of permissions within that team.

Personal Accounts

Personal accounts are created automatically when a user signs up. Each user has exactly one personal account, which serves as their identity in the system. Personal accounts are identified by having the same ID as the user's authentication ID.

Personal accounts do not contain games or projects. Instead, personal accounts provide access to team accounts through memberships.

A personal account can be a member of multiple team accounts.

This means a single user can participate in multiple teams, each with potentially different roles and permissions. For example, a user might be an owner in one team account and a collaborator in another team account.

Users access and manipulate data within team accounts based on their membership role and permissions in those teams. The same personal account can have different levels of access in different team accounts.

Games

Games belong to team accounts. A game is associated with a single team account through an account identifier. Games do not belong to personal accounts.

Games contain information about board game designs, including titles, descriptions, player counts, mechanics, and other game-related metadata.

Multiple games can belong to the same team account.

Projects

Projects belong to team accounts. A project is associated with a single team account through an account identifier. Projects do not belong to personal accounts.

Projects can optionally be linked to a game. When a project is linked to a game, the project is associated with that specific game. Projects can also exist without being linked to any game.

Multiple projects can belong to the same team account. Multiple projects can be linked to the same game.

Relationships

The structure follows this hierarchy:

  1. Team Accounts (primary container for all work data)

    • Have subscriptions tied directly to them

    • Contain all games and projects

    • Can have multiple members (personal accounts) with different roles

    • Are created by users

    • Each team account has a unique slug identifier

  2. Personal Accounts (user identity and access mechanism)

    • Created automatically for each user

    • Provide access to team accounts through memberships

    • Do not contain games or projects

    • Can be members of multiple team accounts simultaneously

    • Each personal account can have different roles and permissions in different team accounts

  3. Games (belong to team accounts)

    • Each game belongs to exactly one team account

    • Games do not belong to personal accounts

    • Multiple games can belong to the same team account

  4. Projects (belong to team accounts, optionally linked to games)

    • Each project belongs to exactly one team account

    • Projects do not belong to personal accounts

    • Projects can optionally be linked to one game

    • Projects can exist without being linked to any game

    • Multiple projects can belong to the same team account

    • Multiple projects can be linked to the same game

Access and Permissions

Access to games and projects is determined by the permission system within team accounts:

  • Users access team account data through their personal account membership in that team

  • Members of a team account have access to games and projects within that team based on their role and permissions

  • The permission system determines who can see and access what data within a team account

  • Different roles within a team account may have different levels of access to games and projects

  • The subscription tied to a team account determines what features and capabilities are available to that team

  • Since a personal account can be a member of multiple teams, a user can access different sets of games and projects depending on which team account they are working within

Did this answer your question?