Skip to content

Add tenant-aware guild context switching #27

@Lakes41

Description

@Lakes41

Summary

Add a guild context model so dashboard views and actions are scoped to the selected guild. This is important for operators managing more than one community.

Current Behaviour

Dashboard pages render global mock data for passes, guilds, members, and activity. There is no shared selected-guild state or routing pattern that scopes data to a particular guild.

Expected Behaviour

Users should be able to select a guild and see passes, members, activity, and settings scoped to that guild.

Suggested Implementation

Create a guild context provider or route-level context such as /guilds/[guildId]/.... Update data access helpers to accept guildId, filter mock data by guild, and prepare the same interface for live API calls.

Files or Areas Likely Affected

  • apps/dashboard/app/guilds/page.tsx
  • apps/dashboard/app/guilds/[guildId]/
  • apps/dashboard/components/DashboardLayout.tsx
  • apps/dashboard/components/Sidebar.tsx
  • apps/dashboard/lib/data/
  • apps/dashboard/lib/mock-data.ts

Acceptance Criteria

  • A selected guild can be resolved from route state or shared context
  • Passes, members, and activity data are scoped by selected guild
  • Switching guilds updates dashboard content without stale data
  • Invalid or unknown guild IDs render a clear not-found state
  • Mock data includes enough guild-specific records to test the flow
  • The implementation does not hard-code a single guild assumption

Additional Notes

Assumption: the dashboard is intended to manage multiple GuildPass communities, not only one hard-coded demo guild.

Metadata

Metadata

Assignees

No one assigned

    Labels

    GrantFox OSSIssue tracked in GrantFox OSSMaybe RewardedIssue may be eligible for a GrantFox rewardOfficial CampaignCampaign: Official Campaign

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions