%%{init:{'theme':'base','themeVariables':{'primaryColor':'#FFFFFF','primaryBorderColor':'#D4D4D8','primaryTextColor':'#18181B','lineColor':'#71717A','fontSize':'12px'}}}%%
erDiagram
scouts {
uuid id PK
string first_name
string last_name
string alias_first_name
date dob
string email
string current_rank
string patrol
string member_type
bool active
}
users {
uuid id PK
string username
string role
uuid scout_id FK
bool is_plc
bool is_cfo
}
households {
uuid id PK
string name
string address
}
household_members {
uuid household_id FK
uuid scout_id FK
}
medbook {
uuid id PK
uuid scout_id FK
date part_a
date part_b
date part_c
}
scout_positions {
uuid scout_id FK
string position
}
scouts ||--o{ household_members : "lives in"
households ||--o{ household_members : "contains"
scouts ||--o| users : "has account"
scouts ||--o| medbook : "medical"
scouts ||--o{ scout_positions : "holds"
👑 Admin Roles
▼
Search for someone to grant or revoke admin. Leader is set automatically from Committee Chair
Hub positions — this is the one role still set by hand. Restricted to the Scoutmaster,
Committee Chair, or site owner. Granting admin needs a second, different
admin to approve before it takes effect; revoking is immediate.
🔄 TroopTrack Sync Health
▼
Last run of each scheduled TroopTrack sync job. Click a row for recent history.
Loading…
⬇️ 1 — Export Database
▼
Downloads the troop database as a multi-sheet Excel workbook (.xlsx).
Open in Excel or Google Sheets, make edits, then upload in step 2.
Sheets exported:
Members · User Accounts · Households · Household Members ·
Medbook · Positions · Rank Progress · Merit Badges Earned · Outings
⚠ Writable on re-import: Members, User Accounts, Medbook, Households, Rank Progress.
Other sheets are reference-only (read them, don't upload changes to them).
⬆️ 2 — Upload Edited Workbook
▼
Upload your edited .xlsx. Each row is matched by its id column.
Only existing rows are updated — no deletes happen automatically.
⚠ Do not change id columns (highlighted gold in the workbook).
Do not rename sheet tabs. Blank cells will clear that field.