Church management platform
Multi-tenant church management: members, households, attendance, forms, analytics and WhatsApp messaging
A shared platform where each church manages its members, households, groups and staff, takes attendance, collects form submissions and messages its congregation on WhatsApp.
The problem
Church administrators keep member lists in spreadsheets, track attendance on paper and send announcements one phone at a time. One deployment has to serve many churches without any of them seeing another's data.
What I built
A NestJS API with an explicit tenancy module and application, infrastructure and presentation layers in every module, and a Next.js admin app. Imports and messaging run as BullMQ jobs, and WhatsApp messages go through the Cloud API with signed webhooks.
Results
- Tenant isolation, rate limiting and security headers built in from the first commit.
- CSV imports run in the background so large member lists don't block the admin.
Features
- Member and household directory
- Groups, departments, staff and team accounts
- Attendance tracking
- Custom forms and submissions
- CSV bulk import
- Analytics dashboards
- WhatsApp messaging with webhook signature verification
- One-time code delivery for sign-in
How it's put together
Hexagonal NestJS modules over PostgreSQL, with Redis-backed queues and a Next.js client using TanStack Query and TanStack Table.
- Better Auth sessions shared between the API and the web app
- Structured logging with pino and health checks
- Throttling and Helmet on every route
Related projects
Web apps2025–2026Shair
Hair consultation platform where a guided quiz builds a profile customers share with their salon
Solo buildReactViteTanStack Router+13
Mobile apps2026Dube
Offline-first debt book for shopkeepers: an Android app, a sync API and an admin panel
Solo buildExpoReact Nativeexpo-sqlite+15
Web apps2025Woji Summit Mulu Wongel Church
Church website with sermon videos, events, giving and ways to get involved
ContributorNext.jsReactTailwind CSS+4