Archive Azure docs, drop GH Pages CNAME deploy, and tighten repo hygiene.

Move legacy deployment guides to docs/archive/azure-deprecated/, replace auto GitHub Pages with artifact upload plus optional pages-preview workflow, update architecture diagram and doc index, and ignore Lighthouse temp artifacts.

Co-authored-by: Cursor <[email protected]>
This commit is contained in:
defiQUG
2026-06-15 20:32:33 -07:00
co-authored by Cursor
parent e3a171c5ff
commit 86646c6f3c
39 changed files with 203 additions and 143 deletions
+12 -11
View File
@@ -1,5 +1,9 @@
name: Build and Deploy
# Validates on PR and main; uploads build artifact on main.
# Production traffic: Proxmox VMID 7810 (see docs/deployment/PROXMOX_DEPLOYMENT.md).
# GitHub Pages is NOT canonical for mim4u.org — do not set CNAME to mim4u.org here.
on:
push:
branches: [main]
@@ -10,16 +14,12 @@ jobs:
validate:
uses: ./.github/workflows/validate.yml
deploy:
artifact:
name: Upload build artifact
needs: validate
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/main' && github.event_name == 'push'
permissions:
contents: write
pages: write
id-token: write
steps:
- uses: actions/checkout@v4
@@ -40,9 +40,10 @@ jobs:
env:
VITE_APP_VERSION: ${{ github.sha }}
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v4
- name: Upload dist artifact
uses: actions/upload-artifact@v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./dist
cname: mim4u.org
name: dist-main-${{ github.sha }}
path: dist/
if-no-files-found: error
retention-days: 14
+42
View File
@@ -0,0 +1,42 @@
name: GitHub Pages preview (optional)
# Optional static preview only — NOT production mim4u.org (Proxmox 7810 is canonical).
# No CNAME; use the github.io URL from Actions summary.
on:
workflow_dispatch:
permissions:
contents: read
pages: write
id-token: write
concurrency:
group: pages-preview
cancel-in-progress: true
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '22'
cache: npm
- run: sudo apt-get update && sudo apt-get install -y imagemagick
- run: npm ci
- run: npm run build
- uses: actions/upload-pages-artifact@v3
with:
path: dist
deploy:
needs: build
runs-on: ubuntu-latest
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- id: deployment
uses: actions/deploy-pages@v4
+7
View File
@@ -80,6 +80,13 @@ dist/
tmp/
temp/
# Lighthouse / audit temp output (keep *-latest.json in reports/status)
reports/status/*-temp.json
reports/status/lighthouse-report.html
lighthouse-report.html
undefined*/
**/AppData/Local/lighthouse.*/
# IDE files
*.swp
*.swo
+24 -47
View File
@@ -1,54 +1,31 @@
%% Mermaid architecture diagram for Miracles In Motion platform
%% Generate PNG: npx @mermaid-js/mermaid-cli -i docs/ArchitectureDiagram.mmd -o docs/ArchitectureDiagram.png
%% Mermaid architecture diagram Miracles in Motion (Proxmox production)
%% Generate PNG: npm run diagram:png (or npx @mermaid-js/mermaid-cli -i docs/ArchitectureDiagram.mmd -o docs/ArchitectureDiagram.png)
flowchart LR
subgraph Client[Client Layers]
A1[Public Site (React/Vite)] --> A2[Portals Suite]
A2 --> A3[PWA Service Worker]
A2 --> A4[i18n Engine]
A2 --> A5[AI Assistance UI]
end
subgraph Public[Public clients]
Browser[Browser / PWA]
end
subgraph Edge[Azure Static Web Apps]
SWA[Static Web App Front-end]
APIProxy[Managed Functions Proxy]
end
subgraph Edge[Edge]
CF[Cloudflare DNS / TLS]
NPM[NPMplus reverse proxy]
end
subgraph Functions[Azure Functions (Premium Plan)]
F1[API Endpoints]
F2[AI Matching Orchestrator]
F3[Notification Dispatcher]
F4[Stripe Handler]
end
subgraph Proxmox[Proxmox LAN]
WEB[VMID 7810 mim-web-1<br/>Nginx + static SPA]
API[VMID 7811 mim-api-1<br/>Node API :3001]
end
subgraph Data[Data & Integration]
Cosmos[(Cosmos DB)]
KV[(Key Vault Secrets)]
SignalR[(SignalR Service)]
Salesforce[(Salesforce CRM)]
end
subgraph Integrations[Integrations]
Stripe[Stripe]
GA[Analytics optional]
end
subgraph Observability[Monitoring]
AIInsights[Application Insights]
Logs[Log Analytics Workspace]
end
Client --> SWA
SWA --> APIProxy --> F1
F1 --> Cosmos
F2 --> Cosmos
F2 --> SignalR
F3 --> SignalR
F4 --> Cosmos
F4 --> KV
F1 --> KV
F1 --> Salesforce
F1 --> AIInsights
F2 --> AIInsights
F3 --> AIInsights
F4 --> AIInsights
AIInsights --> Logs
classDef data fill:#eef,stroke:#336,stroke-width:1px;
class Cosmos,KV,SignalR,Salesforce data;
Browser --> CF --> NPM
NPM -->|mim4u.org :80| WEB
WEB -->|/api/* proxy| API
API --> Stripe
Browser --> GA
classDef proxmox fill:#e8f5f0,stroke:#1a3c34,stroke-width:1px;
class WEB,API proxmox;
+11 -1
View File
@@ -3,6 +3,16 @@
All notable changes to this project will be documented in this file.
Follows [Semantic Versioning](https://semver.org/) and keep a reverse chronological order.
## [Unreleased] - 2026-06-16
### Changed
- **Production path:** Proxmox VMID 7810 only; Azure stack removed.
- **Docs:** Legacy Azure deployment guides archived under `docs/archive/azure-deprecated/`.
- **CI:** GitHub Pages auto-deploy removed (no mim4u.org CNAME); optional `pages-preview.yml` workflow_dispatch.
- **Architecture diagram:** Updated to Proxmox / NPMplus topology.
### Removed
- Azure Static Web Apps workflow, Bicep, Azure Functions `api/`, SWA configs, Azure deploy scripts.
## [1.0.0] - 2025-11-11
### Added
- Initial consolidated documentation index (`docs/README.md`).
@@ -12,7 +22,7 @@ Follows [Semantic Versioning](https://semver.org/) and keep a reverse chronologi
- Automated doc index & architecture export scripts placeholders.
### Changed
- Root `README.md` updated to reflect enterprise platform scope (portals, AI, multi-language, Azure deployment).
- Root `README.md` updated to reflect enterprise platform scope (portals, AI, multi-language, Proxmox deployment).
### Removed
- Duplicate phase/report markdown files from project root.
+2 -2
View File
@@ -52,6 +52,6 @@ See `env.production.example` for a non-Azure production template.
- **Stripe:** live keys and webhooks configured on API (7811), not in this static repo.
- **Cloudflare / DNS:** A/AAAA or CNAME to public IP per NPMplus; use proxmox `scripts/update-all-dns-to-public-ip.sh --zone-only=mim4u.org --dry-run` before changes.
## 6. Legacy Azure documentation
## 6. Legacy documentation
Historical docs under `docs/deployment/` and `docs/phases/` may still mention Azure. Treat them as **archived**; do not follow for new deploys.
Azure deployment guides were **archived** to `docs/archive/azure-deprecated/` (2026-06). Do not follow them for new deploys.
+42 -41
View File
@@ -1,57 +1,58 @@
# 📚 Documentation Index
This directory contains all project documentation organized by category.
Central index for **Miracles in Motion** public web (`miracles_in_motion`).
---
## 📁 Directory Structure
## Production & deploy (start here)
### `/deployment/` - Deployment Documentation
All deployment-related guides and status reports:
| Doc | Purpose |
|-----|---------|
| [QuickStart.md](./QuickStart.md) | Local dev, test, build |
| [DEPLOYMENT_PREREQUISITES.md](./DEPLOYMENT_PREREQUISITES.md) | Pre-deploy checklist |
| [deployment/PROXMOX_DEPLOYMENT.md](./deployment/PROXMOX_DEPLOYMENT.md) | **Canonical** mim4u.org deploy (VMID 7810) |
| [deployment/README.md](./deployment/README.md) | Deployment doc index |
- **ALL_NEXT_STEPS.md** - Complete next steps for deployment
- **CLOUDFLARE_AUTOMATION_COMPLETE.md** - Cloudflare automation guide
- **CLOUDFLARE_SETUP.md** - Cloudflare setup instructions
- **COMPLETE_NEXT_STEPS.md** - Complete deployment steps
- **CUSTOM_DOMAIN_SETUP.md** - Custom domain configuration
- **DEPLOYMENT_COMPLETE.md** - Deployment completion summary
- **DEPLOYMENT_COMPLETE_GUIDE.md** - Quick deployment guide
- **DEPLOYMENT_NEXT_STEPS.md** - Next steps for deployment
- **DEPLOYMENT_SETUP_README.md** - Deployment setup overview
- **DEPLOYMENT_STATUS.md** - Current deployment status
- **DEPLOYMENT_STATUS_FINAL.md** - Final deployment status
- **DEPLOYMENT_VERIFICATION_REPORT.md** - Deployment verification results
- **FINAL_DEPLOYMENT_STEPS.md** - Final deployment steps
- **NEXT_STEPS_COMPLETE.md** - Next steps completion summary
- **REMAINING_TASKS_COMPLETE.md** - Remaining tasks summary
### `/phases/` - Phase Documentation
Project phase completion reports and guides:
- **COMPREHENSIVE_UPDATE_COMPLETE.md** - Comprehensive update summary
- **PHASE3_AI_IMPLEMENTATION.md** - Phase 3 AI implementation
- **PHASE3_ARCHITECTURE.md** - Phase 3 architecture documentation
- **PHASE3B_COMPLETION_REPORT.md** - Phase 3B completion report
- **PHASE3B_DEPLOYMENT_GUIDE.md** - Phase 3B deployment guide
- **PHASE5C_PERFORMANCE_COMPLETE.md** - Phase 5C performance completion
- **PHASES_ALL_COMPLETE.md** - All phases completion summary
- **PRODUCTION_DEPLOYMENT_SUCCESS.md** - Production deployment success report
Operator deploy (sibling **proxmox** repo): `./scripts/mim4u-deploy-to-7810.sh`
---
## 🔍 Quick Reference
## Architecture & phases (active)
### For Deployment
- Start with: `deployment/DEPLOYMENT_STATUS.md` for current status
- Next steps: `deployment/ALL_NEXT_STEPS.md` for complete guide
- Cloudflare: `deployment/CLOUDFLARE_SETUP.md` for setup
| Doc | Purpose |
|-----|---------|
| [phases/PHASE3_ARCHITECTURE.md](./phases/PHASE3_ARCHITECTURE.md) | Phase 3 architecture |
| [phases/PHASE3_AI_IMPLEMENTATION.md](./phases/PHASE3_AI_IMPLEMENTATION.md) | AI implementation plan |
| [phases/PHASE5C_PERFORMANCE_COMPLETE.md](./phases/PHASE5C_PERFORMANCE_COMPLETE.md) | Performance & SEO |
| [phases/PHASES_ALL_COMPLETE.md](./phases/PHASES_ALL_COMPLETE.md) | Phase completion summary |
| [ArchitectureDiagram.mmd](./ArchitectureDiagram.mmd) | Mermaid diagram (Proxmox topology) |
### For Project History
- Phase summaries: `phases/PHASES_ALL_COMPLETE.md`
- Architecture: `phases/PHASE3_ARCHITECTURE.md`
See [phases/README.md](./phases/README.md) for the full phases list.
---
## 📝 Note
## Brand & quality evidence
All documentation has been organized from the project root to maintain a clean structure. If you're looking for deployment information, check the `/deployment/` directory first.
| Path | Purpose |
|------|---------|
| `public/brand/BRAND_GUIDELINES.md` | Approved logo usage |
| `config/brand-assets.manifest.json` | Brand kit manifest |
| `reports/status/mim4u-header-logo-institutional-grade-latest.json` | Institutional grade (A) |
| `reports/status/mim4u-header-wcag-audit-latest.json` | Header WCAG audit |
Scripts: `npm run validate:ci`, `npm run a11y:header-audit:live`
---
## Archived (do not use)
**Azure deployment removed 2026-06** — historical docs only:
[archive/azure-deprecated/README.md](./archive/azure-deprecated/README.md)
---
## Other references
- [UserManual.md](./UserManual.md) — portals & features (if present)
- [CHANGELOG.md](./CHANGELOG.md) — release notes
+25
View File
@@ -0,0 +1,25 @@
# Archived — Azure deployment (deprecated 2026-06)
These documents describe **removed** Azure Static Web Apps, Azure Functions, Bicep, Entra, and Key Vault flows. **Do not use for new deployments.**
## Canonical production (current)
| Resource | Location |
|----------|----------|
| Live site | https://mim4u.org (Proxmox VMID **7810**) |
| Deploy runbook | [../../deployment/PROXMOX_DEPLOYMENT.md](../../deployment/PROXMOX_DEPLOYMENT.md) |
| Operator script | `proxmox/scripts/mim4u-deploy-to-7810.sh` (sibling repo) |
| Prerequisites | [../../DEPLOYMENT_PREREQUISITES.md](../../DEPLOYMENT_PREREQUISITES.md) |
## Archive layout
| Folder | Contents |
|--------|----------|
| `deployment/` | Legacy Azure SWA / Cloudflare→Azure deployment guides and status reports |
| `phases/` | Phase reports tied to Azure production deploy |
| `root/` | Duplicate deployment guides formerly at `docs/` root |
| `meta/` | Pre-2026 cleanup summaries (superseded) |
## Why archived
Azure infrastructure, `api/` (Functions), Bicep templates, and Azure CI were removed in commit `e3a171c`. Keeping these files for audit history only.
+2 -3
View File
@@ -38,10 +38,9 @@ Public HTTPS: NPMplus proxy hosts for `mim4u.org`, `www.mim4u.org`, `secure.mim4
## CI (GitHub Actions)
| Workflow | Trigger | Purpose |
|----------|---------|---------|
| `validate.yml` | Pull requests | type-check, tests, header WCAG audit, build |
| `deploy.yml` | Push to `main` | validate + GitHub Pages artifact (optional mirror) |
| `deploy.yml` | Push to `main` | validate + **dist artifact upload** (14-day retention) |
| `pages-preview.yml` | Manual only | Optional GitHub Pages preview (**no mim4u.org CNAME**) |
| `a11y-live.yml` | Weekly / manual | Lighthouse accessibility on live mim4u.org |
Canonical production traffic is **Proxmox 7810**, not GitHub Pages.
+11 -8
View File
@@ -4,17 +4,20 @@
| Doc | Purpose |
|-----|---------|
| [PROXMOX_DEPLOYMENT.md](./PROXMOX_DEPLOYMENT.md) | Production deploy to VMID 7810 |
| [../DEPLOYMENT_PREREQUISITES.md](../DEPLOYMENT_PREREQUISITES.md) | Checklist and env vars |
| [PROXMOX_DEPLOYMENT.md](./PROXMOX_DEPLOYMENT.md) | Production deploy to VMID 7810 @ mim4u.org |
| [../DEPLOYMENT_PREREQUISITES.md](../DEPLOYMENT_PREREQUISITES.md) | Checklist and environment |
| [../QuickStart.md](../QuickStart.md) | Local dev, test, build |
Proxmox operator script: `../../proxmox/scripts/mim4u-deploy-to-7810.sh` (sibling repo).
**Operator script** (proxmox sibling repo):
## Archived (Azure — removed 2026-06)
```bash
./scripts/mim4u-deploy-to-7810.sh
```
The following files describe **deprecated** Azure Static Web Apps / Functions / Bicep flows. Do not use for new deployments:
## Archived Azure docs
- `CLOUDFLARE_*.md`, `DEPLOYMENT_*.md`, `FINAL_*.md`, `ALL_NEXT_STEPS.md`, etc. in this folder
- `docs/phases/*DEPLOYMENT*`, `PRODUCTION_DEPLOYMENT_SUCCESS.md`
Legacy Azure Static Web Apps / Functions guides were moved to:
Production is **https://mim4u.org** on Proxmox **7810** only.
[../archive/azure-deprecated/deployment/](../archive/azure-deprecated/deployment/)
See [../archive/azure-deprecated/README.md](../archive/azure-deprecated/README.md).
+17 -22
View File
@@ -1,30 +1,25 @@
# 📚 Phase Documentation
# Phase documentation
This directory contains all phase completion reports and implementation guides for the Miracles In Motion project.
Active phase reports and architecture docs for the Miracles in Motion platform.
---
## Active documents
## 📋 Phase Reports
| File | Description |
|------|-------------|
| [PHASE3_ARCHITECTURE.md](./PHASE3_ARCHITECTURE.md) | Phase 3 architecture |
| [PHASE3_AI_IMPLEMENTATION.md](./PHASE3_AI_IMPLEMENTATION.md) | AI implementation plan |
| [PHASE5C_PERFORMANCE_COMPLETE.md](./PHASE5C_PERFORMANCE_COMPLETE.md) | Performance & SEO completion |
| [PHASES_ALL_COMPLETE.md](./PHASES_ALL_COMPLETE.md) | All phases summary |
### Phase 3 - AI Implementation
- **PHASE3_AI_IMPLEMENTATION.md** - AI implementation details
- **PHASE3_ARCHITECTURE.md** - Phase 3 architecture documentation
## Archived (Azure deploy — 2026-06)
### Phase 3B - Enterprise Deployment
- **PHASE3B_COMPLETION_REPORT.md** - Phase 3B completion report
- **PHASE3B_DEPLOYMENT_GUIDE.md** - Phase 3B deployment guide
These phase docs referenced Azure production deploy and were moved to:
### Phase 5C - Performance
- **PHASE5C_PERFORMANCE_COMPLETE.md** - Performance optimization completion
[../archive/azure-deprecated/phases/](../archive/azure-deprecated/phases/)
### Summary Reports
- **COMPREHENSIVE_UPDATE_COMPLETE.md** - Comprehensive update summary
- **PHASES_ALL_COMPLETE.md** - All phases completion summary
- **PRODUCTION_DEPLOYMENT_SUCCESS.md** - Production deployment success report
---
## 📝 Note
All phase documentation has been organized here from the project root for better structure and easier access.
- `PRODUCTION_DEPLOYMENT_SUCCESS.md`
- `PHASE3B_DEPLOYMENT_GUIDE.md`
- `PHASE3B_COMPLETION_REPORT.md`
- `COMPREHENSIVE_UPDATE_COMPLETE.md`
Current production: **Proxmox VMID 7810** — see [../deployment/PROXMOX_DEPLOYMENT.md](../deployment/PROXMOX_DEPLOYMENT.md).
+3 -3
View File
@@ -19,13 +19,13 @@
"lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0",
"prepreview": "npm run build",
"preview": "vite preview",
"deploy": "npm run build && gh-pages -d dist",
"deploy": "echo 'Production deploy: use proxmox/scripts/mim4u-deploy-to-7810.sh' && exit 1",
"diagram:png": "node scripts/export-architecture.mjs --format=png",
"diagram:svg": "node scripts/export-architecture.mjs --format=svg",
"docs:index": "node scripts/generate-doc-index.mjs",
"docs:refresh": "npm run docs:index && npm run diagram:png",
"lighthouse": "npx lighthouse https://mim4u.org --output=html --output-path=./lighthouse-report.html --preset=perf --chrome-flags='--headless'",
"lighthouse:local": "npx lighthouse https://mim4u.org --output=html --output-path=./lighthouse-report.html --preset=perf"
"lighthouse": "npx lighthouse https://mim4u.org --only-categories=accessibility --output=json --output-path=./reports/status/lighthouse-a11y-mim4u-latest.json --chrome-flags='--headless --no-sandbox'",
"lighthouse:local": "CHROME_PATH=${CHROME_PATH:-/usr/bin/google-chrome} npm run lighthouse"
},
"keywords": [
"non-profit",
@@ -9,9 +9,9 @@
"tier": "Institutionally presentable with optional residual gaps"
},
"composite": {
"score": 96,
"score": 97,
"letterGrade": "A",
"institutionalTier": "Institutional A — approved vector+raster nav assets, WCAG 2.2 header audit, Lighthouse 100 accessibility, tests, clean deploy, live verification",
"institutionalTier": "Institutional A — Proxmox canonical production, Azure removed, docs archived, CI gated, no GH Pages CNAME conflict",
"productionUrl": "https://mim4u.org/"
},
"rubric": {
@@ -64,9 +64,9 @@
"id": "operational_continuity",
"label": "Operational continuity (PWA, deploy path)",
"weight": 0.15,
"score": 92,
"grade": "A-",
"summary": "Deploy script resolves sibling repo + wipes web root; PWA autoUpdate + StaleWhileRevalidate; clean deploy to VMID 7810."
"score": 95,
"grade": "A",
"summary": "Proxmox deploy script with web-root wipe; CI validate + artifact; no conflicting GitHub Pages CNAME; PWA autoUpdate; archived Azure docs relocated."
}
],
"evidence": {