HIGH story-organization-labels-terminology-global-admin-001 5 pts
5
Story Points
High
Priority
Organization Labels & Terminology
Feature

User Story

As a administrator
I want to open the labels configuration screen and edit the terminology strings for all configurable label keys — including role names, organizational unit names, activity type labels, and report terminology — to match my organization's internal language
So that So that all volunteers, coordinators, and staff see language in the app that matches the documentation, training materials, and culture they already know, reducing cognitive friction and increasing adoption

Acceptance Criteria

  • Given an administrator navigates to the admin portal, when they open the Labels Config screen, then all configurable label keys are listed with their current values and system defaults visible side by side
  • Given the labels config screen is open, when an administrator edits one or more label fields and taps Save, then all changes are batch-written to the org_labels table via the Labels Repository
  • Given a label has been saved, when any user opens or navigates within the app, then the Dynamic Label Widget renders the organization-specific string for that key everywhere it appears
  • Given a label key has no custom value set, when the Dynamic Label Widget renders it, then the system default from Label Keys Constants is displayed so the UI is always fully populated
  • Given the app starts up, when the Labels Service fetches the organization's label configuration from Supabase, then the configuration is cached in the Riverpod state layer and available synchronously throughout the app

Business Value

Terminology consistency between the app and an organization's existing culture is a primary adoption driver. When peer mentors and coordinators encounter unfamiliar labels for concepts they know well, trust in the tool drops and training costs rise. This configuration capability enables each member organization to see their own language from day one, dramatically reducing onboarding friction and making the product viable across the full client portfolio without custom development per organization.