deafmissoula-website/cline_docs/activeContext.md

52 lines
2.3 KiB
Markdown

# Active Context
## Current Status (May 27, 2026)
**v2 Fully Deployed** — MongoDB backend live on production
The site completed a full backend migration from a hardcoded static Express app (v1) to a MongoDB-backed API with a board management dashboard (v2). Frontend is visually identical to v1 — no public-facing changes.
## What Changed in v2
- All previously hardcoded data (board members, events, gallery, minutes, sponsors) now lives in MongoDB and is editable via the `/manage` dashboard
- Board members can log in at `/manage` using their `@deafmissoula.org` email address
- First login forces a password change; forgot-password flow sends reset link via email
- Dashboard supports drag-and-drop reordering for Minutes and Board Members tabs
- Image/file uploads go to a persistent Docker volume (`mcdi-uploads-data`)
- MongoDB runs in a separate container (`mcdi-mongo-data` volume)
## Board Member Accounts
All four board members are seeded with accounts. Passwords are set via the `/manage` dashboard or the welcome email flow. On first login each member is forced to set their own password.
| Name | Email | Position |
|------|-------|----------|
| Rita Brandborg | rita.brandborg@deafmissoula.org | President |
| Skyla Wilson | skyla.wilson@deafmissoula.org | Vice President |
| Tessa Williams | tessa.williams@deafmissoula.org | Secretary |
| Aubz M | aubz.m@deafmissoula.org | Treasurer |
Admin fallback: `admin@deafmissoula.org` (password in `stack.env``ADMIN_PASSWORD`)
## Current Deployment
- **Production server:** `10.4.0.205` (WireGuard VPN)
- **Site path:** `/home/chaulmark/websites/deafmissoula.org/`
- **Containers:** `deafmissoulaorg-app-1` (port 801) + `deafmissoulaorg-mongodb-1`
- **Git branch:** `main` (v2), `v1` tag = last hardcoded version
## Next Steps
- [ ] Onboard remaining board members (Skyla, Tessa, Aubz) once Rita demo is confirmed successful
- [ ] Change default `stack.env` passwords from placeholders to strong values
- [ ] Update events in dashboard when new meetings are scheduled (no more code changes needed for content updates)
- [ ] Minutes PDFs: new PDFs go in `client/public/minutes/` (git commit + deploy) OR upload via dashboard (no deploy needed)
## Deployment Command
```bash
ssh chaulmark@10.4.0.205
cd ~/websites/deafmissoula.org
git pull origin main
docker compose down && docker compose up -d --build
```