# d4kud4n14n/gms-sslg-dsdsnhs architecture

> Architecture diagram of the GitHub repository d4kud4n14n/gms-sslg-dsdsnhs, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-29). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/d4kud4n14n/gms-sslg-dsdsnhs
- Repository: https://github.com/d4kud4n14n/gms-sslg-dsdsnhs

## Overview

GMS is a role-aware governance platform for SSLG operations. Users authenticate with UKEY-backed identity, complete onboarding when needed, and enter a dashboard with role-specific insights; they can then manage meetings, attendance, minutes and resolutions, while administrators manage users and workspaces. The graph also preserves the documented password, confirmation and SYSVER flows. Sampled source confirms meeting persistence and user creation; links for unsampled page behavior rely on README capabilities, so uncertain internal wiring is omitted.

Main entry points: [`src/App.tsx`](https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/App.tsx) (Router and session), [`src/pages/Dashboard.tsx`](https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/pages/Dashboard.tsx) (Governance dashboard), [`src/pages/Meetings.tsx`](https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/pages/Meetings.tsx) (Meetings list), [`src/pages/SYSVER.tsx`](https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/pages/SYSVER.tsx) (SYSVER admin)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_entry["Application entry"]
  node_app["Router and session<br/>[App.tsx]"]
  node_main["React mount<br/>[main.tsx]"]
end

subgraph group_identity["Identity and onboarding"]
  node_login["UKEY login<br/>[Login.tsx]"]
  node_auth["Auth helpers<br/>[auth.ts]"]
  node_setup["Account setup<br/>[Setup.tsx]"]
  node_forgot["Password recovery<br/>[ForgotPassword.tsx]"]
  node_reset["Password reset<br/>[ResetPassword.tsx]"]
end

subgraph group_governance["Governance operations"]
  node_dashboard["Governance dashboard<br/>[Dashboard.tsx]"]
  node_rolewidgets["Role insights<br/>[RoleWidgets.tsx]"]
  node_meetings["Meetings list<br/>[Meetings.tsx]"]
  node_meetingdetail["Meeting details<br/>[MeetingDetail.tsx]"]
end

subgraph group_administration["Administration"]
  node_sysver["SYSVER admin<br/>[SYSVER.tsx]"]
  node_users["User management<br/>[UserManagement.tsx]"]
  node_createuser["User creation API<br/>[create-user.ts]"]
  node_workspaces["Workspace management"]
  node_members["Workspace members"]
end

node_user(("Governance user"))
node_supabase[("Supabase")]

node_user -->|"opens"| node_app
node_main -->|"mounts"| node_app
node_app -->|"checks session"| node_supabase
node_app -->|"routes unauthenticated"| node_login
node_app -->|"routes setup"| node_setup
node_app -->|"routes dashboard"| node_dashboard
node_app -->|"routes recovery"| node_forgot
node_app -->|"routes reset"| node_reset
node_app -->|"routes meetings"| node_meetings
node_app -->|"routes meeting detail"| node_meetingdetail
node_app -->|"routes admin"| node_sysver
node_login -->|"authenticates"| node_supabase
node_auth -->|"checks confirmation"| node_supabase
node_setup -->|"updates account"| node_supabase
node_forgot -->|"requests reset"| node_supabase
node_reset -->|"sets password"| node_supabase
node_dashboard -->|"loads metrics"| node_supabase
node_dashboard -->|"renders insights"| node_rolewidgets
node_meetings -->|"reads and creates"| node_supabase
node_meetings -->|"opens meeting"| node_meetingdetail
node_meetingdetail -->|"reads and updates"| node_supabase
node_sysver -->|"provides management"| node_users
node_sysver -->|"provides management"| node_workspaces
node_users -->|"reads and updates profiles"| node_supabase
node_users -->|"posts account request"| node_createuser
node_createuser -->|"validates and creates account"| node_supabase
node_workspaces -->|"reads and updates workspaces"| node_supabase
node_workspaces -->|"opens membership"| node_members
node_members -->|"manages membership"| node_supabase

click node_app "https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/App.tsx"
click node_main "https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/main.tsx"
click node_login "https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/pages/Login.tsx"
click node_auth "https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/lib/auth.ts"
click node_setup "https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/pages/Setup.tsx"
click node_forgot "https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/pages/ForgotPassword.tsx"
click node_reset "https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/pages/ResetPassword.tsx"
click node_dashboard "https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/pages/Dashboard.tsx"
click node_rolewidgets "https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/components/Dashboard/RoleWidgets.tsx"
click node_meetings "https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/pages/Meetings.tsx"
click node_meetingdetail "https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/pages/MeetingDetail.tsx"
click node_sysver "https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/pages/SYSVER.tsx"
click node_users "https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/components/UserManagement.tsx"
click node_createuser "https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/functions/api/create-user.ts"
click node_workspaces "https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/components/WorkspaceManagement.tsx"
click node_members "https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/components/WorkspaceMembers.tsx"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_app,node_main,node_user toneBlue
class node_login,node_auth,node_setup,node_forgot,node_reset,node_supabase toneAmber
class node_dashboard,node_rolewidgets,node_meetings,node_meetingdetail toneMint
class node_sysver,node_users,node_createuser,node_workspaces,node_members toneRose
```

## Components

### Application entry

- [Router and session](https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/App.tsx): `src/App.tsx`
- [React mount](https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/main.tsx): `src/main.tsx`

### Identity and onboarding

- [UKEY login](https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/pages/Login.tsx): `src/pages/Login.tsx`
- [Auth helpers](https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/lib/auth.ts): `src/lib/auth.ts`
- [Account setup](https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/pages/Setup.tsx): `src/pages/Setup.tsx`
- [Password recovery](https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/pages/ForgotPassword.tsx): `src/pages/ForgotPassword.tsx`
- [Password reset](https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/pages/ResetPassword.tsx): `src/pages/ResetPassword.tsx`

### Governance operations

- [Governance dashboard](https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/pages/Dashboard.tsx): `src/pages/Dashboard.tsx`
- [Role insights](https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/components/Dashboard/RoleWidgets.tsx): `src/components/Dashboard/RoleWidgets.tsx`
- [Meetings list](https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/pages/Meetings.tsx): `src/pages/Meetings.tsx`
- [Meeting details](https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/pages/MeetingDetail.tsx): `src/pages/MeetingDetail.tsx`

### Administration

- [SYSVER admin](https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/pages/SYSVER.tsx): `src/pages/SYSVER.tsx`
- [User management](https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/components/UserManagement.tsx): `src/components/UserManagement.tsx`
- [User creation API](https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/functions/api/create-user.ts): `functions/api/create-user.ts`
- [Workspace management](https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/components/WorkspaceManagement.tsx): `src/components/WorkspaceManagement.tsx`
- [Workspace members](https://github.com/d4kud4n14n/gms-sslg-dsdsnhs/blob/main/src/components/WorkspaceMembers.tsx): `src/components/WorkspaceMembers.tsx`

### Other components

- **Governance user**
- **Supabase**

## Connections

- Governance user → Router and session: opens
- React mount → Router and session: mounts
- Router and session → Supabase: checks session
- Router and session → UKEY login: routes unauthenticated
- Router and session → Account setup: routes setup
- Router and session → Governance dashboard: routes dashboard
- Router and session → Password recovery: routes recovery
- Router and session → Password reset: routes reset
- Router and session → Meetings list: routes meetings
- Router and session → Meeting details: routes meeting detail
- Router and session → SYSVER admin: routes admin
- UKEY login → Supabase: authenticates
- Auth helpers → Supabase: checks confirmation
- Account setup → Supabase: updates account
- Password recovery → Supabase: requests reset
- Password reset → Supabase: sets password
- Governance dashboard → Supabase: loads metrics
- Governance dashboard → Role insights: renders insights
- Meetings list → Supabase: reads and creates
- Meetings list → Meeting details: opens meeting
- Meeting details → Supabase: reads and updates
- SYSVER admin → User management: provides management
- SYSVER admin → Workspace management: provides management
- User management → Supabase: reads and updates profiles
- User management → User creation API: posts account request
- User creation API → Supabase: validates and creates account
- Workspace management → Supabase: reads and updates workspaces
- Workspace management → Workspace members: opens membership
- Workspace members → Supabase: manages membership
