Multi-tenant church management platform replacing legacy systems like Planning Center and Church Community Builder. A unified system that consolidates people, families, groups, events, check-ins, services/worship planning, giving/donations, communications, and user accounts into a single interface — simpler than Planning Center's fragmented per-module apps. Isolated per-client databases deliver a more responsive experience than Church Community Builder's shared-infrastructure model. White-label branding system allows per-church customization of name, logo, colors, and contact info with zero code changes.
Includes 3 interactive demo accounts (Member, Staff, Admin) with guided walkthrough guides so users can test-drive the full platform with role-appropriate permissions.
Architecture & Data
- 40 REST controllers covering auth, people, families, events, groups, check-ins, giving, services, forms, reports, and 3rd-party integrations
- Granular RBAC: 12 roles, 48 permissions across 10 modules with
[RequireModule]attribute-based backend gating - JSONB archival system — 71% data reduction (61,927 checkins into 105 JSONB rows) with event-date-based retention and VACUUM FULL post-archival via weekly cron
- Two-tier audit framework — Tier 1: automatic field-level change tracking via EF Core SaveChangesInterceptor on 11 entities. Tier 2: explicit admin action logging with IP address capture
- 12-feature modular flag system (7 included + 5 add-on) with
[RequireModule]backend gating,ModuleRoutefrontend gating, and 5-minute TTL cache
Payments & Communications
- Stripe (one-time + recurring subscriptions via Payment Intents API) & PayPal (Orders v2) with cover-fees calculation (2.9%+$0.30 card, 0.8% ACH capped at $5)
- Twilio SMS — phone verification, toll-free messaging, SMS-to-Give webhook with keyword triggers ("CONNECT"/"HI"/"HELLO")
- HMAC-signed visitor Connection Cards — self-validating tokens (Base64Url + HMAC-SHA256) with 24-hour expiry, fuzzy email matching via Levenshtein distance with 20+ domain typo corrections
- Email broadcasts via Gmail SMTP, Mailchimp audience sync integration
Integrations & Mobile
- Bidirectional Planning Center sync — IAsyncEnumerable pagination with SemaphoreSlim rate limiting (90 req/min), HMAC-SHA256 webhook verification, remote_id bidirectional lookup
- React Native mobile app (iOS App Store + Android) — giving, check-in, small groups, watch sermons (YouTube), church info, biometric auth, multi-church selector, encrypted JWT via expo-secure-store
- Thermal printer integration — 4"x2" ZD421 labels (child, parent pickup, volunteer) with shared family security codes and auto-print on kiosk check-in
- Hierarchical group-based event auto-resolution — walks parent_group_id ancestor chain so children in nested groups auto-match department-level events
- Service plan builder with song library, chord charts with transposition, team scheduling, volunteer blockouts, and digital Music Stand module
- Two-tier profanity filter as global action filter — evasion-resistant regex with gap-matching, leetspeak detection, and 70+ word whitelist