Appearance
Technical Architecture & Platform Recommendations ​
Superseded: This document predates all locked platform decisions and is retained only as a historical record. It must NOT be used as implementation guidance. The decisions below have all been resolved:
- Auth is Clerk (Apple/Google social login โ ADR 0003). Not Azure AD B2C / Entra.
- Database is PostgreSQL on Azure DB for PostgreSQL Flexible Server (ADR 0024). Not Azure SQL.
- Compute is Azure Container Apps (containerised Node.js) (ADR 0024). Not Azure Functions / Azure Static Web Apps backend.
- SMS is Twilio (ADR 0013).
- Package manager is pnpm + Turborepo (ADR 0001).
For current guidance see docs/internal/architecture/system-architecture.md, pmo/platform-strategy.md, and the ADRs in
docs/internal/adr/.
๐ Current Epic Priority & Development Path ​
CRITICAL SEQUENCE (Must Complete In Order): ​
- Project Management Setup (Epic #8) - Sprint 000 โ
- Technical Architecture & Design (Epic #9) - Sprint 001 ๐
- UI/UX Design & Portal Mockups (Epic #18) - Sprint 001-002 ๐
- Foundation & Authentication (Epic #1) - Sprint 002-003 ๐
- Calendar System (Epic #6) - Sprint 003-004 ๐
Key Business Requirements Addressed: ​
- โ Solution validation and Microsoft alternatives research
- โ RBAC deep dive and access control architecture
- โ Domain/tenant setup planning
- โ Portal mockups and user experience design
- โ Faith-friendly technology direction
๐ฏ Recommended Platform: Azure Static Web Apps + Functions ​
Why This Stack is Perfect for Your Needs: ​
Cost-Effective: Nearly free for small communities
- Static Web Apps: Free tier with 100GB bandwidth
- Azure Functions: 1M requests/month free
- Azure AD B2C: 50K monthly active users free
Religious Organization Benefits:
- Microsoft Nonprofits Program: Up to $3,500/year Azure credits
- GitHub for Nonprofits: Free private repositories
- Office 365 Nonprofit discounts
Development-Friendly:
- Excellent VS Code integration
- GitHub Copilot fully supported
- CI/CD built-in with GitHub Actions
RBAC Integration:
- Azure AD B2C for identity management
- Custom approval workflows
- Social login (Google, Microsoft, Apple)
๐๏ธ Phase-by-Phase Development Plan ​
Phase 1: Project Setup & Architecture (Sprints 000-001) ​
Focus: Foundation Planning & Technical Design
Priority Order: ​
- Project Management Setup (Epic #8) - Complete project structure
- Technical Architecture (Epic #9) - Solution validation & technology decisions
- UI/UX Design Planning (Epic #18) - Portal mockups and user experience
- RBAC Architecture Deep Dive - Access controls and permission system design
Phase 2: Core Infrastructure (Sprints 002-003) ​
Focus: Authentication & Foundation
Features: ​
- Repository structure and development environment
- Azure AD B2C identity system with invitation codes
- Database schema for users, roles, events
- Basic authentication with login/logout functionality
- Deployment pipeline with CI/CD setup
Phase 3: Core Calendar (Sprints 003-004) ​
Focus: MVP Calendar Functionality
Features: ​
- Event creation with RBAC permissions
- Calendar views (monthly, weekly, daily)
- Event categories and visibility levels
- Basic RSVP functionality
Phase 4: Admin Portal (Sprints 004-005) ​
Focus: Management & Approval Workflows
Features: ​
- User approval workflows
- Role management
- Event moderation
- System configuration
Phase 4: Advanced Features (Month 4+) ​
Focus: Community Enhancement
Features: ​
- GA vs v.Next environment setup
- Enhanced notifications
- Reporting and analytics
- Mobile-responsive improvements
๐ ๏ธ Recommended Tech Stack ​
Frontend: ​
- Framework: React with TypeScript
- UI Library: Chakra UI (clean, accessible)
- Calendar: FullCalendar.js
- State Management: Zustand (simpler than Redux)
- Routing: React Router
Backend: ​
- Platform: Azure Functions (Node.js/TypeScript)
- Database: Azure SQL Database (Basic tier)
- Authentication: Azure AD B2C
- Storage: Azure Blob Storage (for file uploads)
DevOps: ​
- Hosting: Azure Static Web Apps
- CI/CD: GitHub Actions
- Monitoring: Azure Application Insights
- DNS: Azure DNS or Cloudflare
๐ก Immediate Next Steps ​
- Apply for Microsoft Nonprofits Program (2-3 weeks processing)
- Set up Azure subscription with nonprofit benefits
- Create development environment structure
- Design database schema with your team
- Build identity/authentication MVP
Would you like me to start by setting up the repository structure and creating the initial project scaffolding?