Web Applications

BSF Online - Virtual Bible Study Platform

Global online Bible study platform enabling thousands of users worldwide to participate in structured group studies with video conferencing, interactive lessons, and real-time collaboration features.

Client / Context
Bible Study Fellowship (BSF) International
Timeline
Q2 2022 - Q4 2024
Role
Lead Developer
Technology Stack
React .NET Core C# Azure SQL Azure (Blob Storage, CDN, App Service) Azure Search Application Insights WebRTC SignalR Redis Docker Kubernetes Microsoft Graph API SharePoint Online Dynamics 365 Zoom API Stripe API PayPal API SendGrid

Project Overview

Led development of BSF Online, a comprehensive virtual Bible study platform serving over 60,000 active users across 150+ countries, facilitating weekly group studies and interactive learning experiences.

Built a scalable microservices architecture handling video conferencing, real-time discussion forums, interactive question-answer sessions, and multimedia Bible study content delivery.

Implemented robust user management system supporting group leaders, participants, and administrators with role-based access control, attendance tracking, and progress monitoring.

The Challenge

Problem Statement

This project addressed multiple critical technical challenges:

1. Global Scale Video Conferencing

Supporting thousands of concurrent video study groups worldwide required implementing WebRTC with intelligent routing, adaptive bitrate streaming, and regional media servers. Optimized for low-bandwidth connections in developing countries while maintaining quality for high-bandwidth users.

2. Real-Time Collaborative Learning

Building interactive features where group members could simultaneously answer questions, share notes, and discuss passages required sophisticated conflict resolution, optimistic UI updates, and eventual consistency patterns using Socket.io and Redis pub/sub.

3. Multilingual Content Delivery

Delivering Bible study materials in 40+ languages with proper typography, right-to-left text support, and cultural adaptations while maintaining content synchronization across translations presented complex localization challenges.

Solution Architecture

graph TB Users["Users
(Web & Mobile)"] CDN["Azure CDN
(Global Distribution)"] subgraph Frontend["Frontend Layer"] React["React SPA
(PWA Enabled)"] WebRTC["WebRTC Client
(Video/Audio)"] Captcha["Captcha
(Bot Protection)"] end subgraph Backend["Backend Services"] AppGateway["Azure App Gateway
(Load Balancer)"] AuthService["Auth Service
(JWT + Azure AD)"] StudyService["Study Service
(.NET Core API)"] VideoService["Video Service
(Media Server)"] ChatService["Chat Service
(SignalR)"] GraphAPI["MS Graph API
(Integration Layer)"] end subgraph Data["Data Layer"] AzureSQL[("Azure SQL
(User/Content Data)")] RedisCache[("Redis Cache
(Sessions)")] BlobStorage[("Blob Storage
(Media/Documents)")] AzureSearch[("Azure Search
(Resource Index)")] end subgraph Microsoft["Microsoft 365"] SharePoint["SharePoint Online
(Document Collaboration)"] Dynamics["Dynamics 365
(CRM/Operations)"] end subgraph External["External Services"] Stripe["Stripe
(Payment Processing)"] PayPal["PayPal
(Payment Processing)"] Email["SendGrid
(Notifications)"] Zoom["Zoom
(Video Conferencing)"] AppInsights["Application Insights
(Monitoring)"] end Users --> CDN CDN --> React React --> AppGateway React --> Captcha WebRTC --> VideoService AppGateway --> AuthService AppGateway --> StudyService AppGateway --> ChatService AppGateway --> GraphAPI AuthService --> AzureSQL StudyService --> AzureSQL StudyService --> AzureSearch ChatService --> RedisCache VideoService --> BlobStorage GraphAPI --> SharePoint GraphAPI --> Dynamics StudyService --> Stripe StudyService --> PayPal StudyService --> Zoom AuthService --> Email VideoService --> AppInsights StudyService --> AppInsights AuthService --> AppInsights style Users fill:#667eea,stroke:#333,stroke-width:2px,color:#fff style CDN fill:#48bb78,stroke:#333,stroke-width:2px,color:#fff style AppGateway fill:#ed8936,stroke:#333,stroke-width:2px,color:#fff style AzureSQL fill:#4299e1,stroke:#333,stroke-width:2px,color:#fff style RedisCache fill:#f56565,stroke:#333,stroke-width:2px,color:#fff style GraphAPI fill:#0078d4,stroke:#333,stroke-width:2px,color:#fff style AzureSearch fill:#f59e0b,stroke:#333,stroke-width:2px,color:#fff

Key Features & Implementation

  • Zoom Video Integration: Seamless Zoom integration for large-scale video study groups with API-based meeting creation and management
  • Interactive Lessons: Structured Bible study curriculum with daily questions, commentary notes, and multimedia content
  • Azure Search: Full-text search across lesson materials and resources with advanced filtering and relevance scoring
  • Discussion Forums: Real-time chat and threaded discussions with moderation tools for group leaders
  • Progress Tracking: Attendance records, completion statistics, and personal study journals
  • Group Management: Leader tools for scheduling meetings, sending invitations, and managing member lists
  • SharePoint Integration: Document collaboration and content management via Microsoft Graph API for study materials and resources
  • Dynamics 365 CRM: Integrated member management, donor tracking, and ministry operations through Dynamics 365
  • Multilingual Support: Content delivery in 40+ languages with automatic translation and localization
  • Bot Protection: Captcha integration preventing automated abuse and ensuring authentic user interactions
  • Mobile Responsive: Progressive Web App (PWA) working seamlessly on desktop, tablet, and mobile devices
  • Accessibility Compliance: WCAG 2.1 AA compliant with screen reader support and keyboard navigation
  • Payment Integration: Dual payment processing with Stripe and PayPal for flexible donation options
  • Application Monitoring: Azure Application Insights providing real-time performance telemetry and diagnostics
  • Admin Dashboard: Comprehensive analytics, user management, and content publishing tools

Results & Impact

Outcomes Achieved

  • 60,000+ Active Users: Platform serving global community across 150+ countries
  • 2,000+ Weekly Groups: Concurrent study groups meeting weekly with 95% uptime
  • 40 Languages: Multilingual support enabling worldwide accessibility
  • 4.8/5 User Rating: High satisfaction scores from participant surveys
  • 85% Completion Rate: Strong engagement with users completing study programs
  • $2M+ Donations: Dual payment processing via Stripe and PayPal for ministry support
  • 99.5% Uptime: Highly reliable platform with minimal service interruptions
  • 50ms Latency: Real-time chat and collaborative features with sub-100ms response times

Technical Insights & Best Practices

WebRTC Implementation Best Practices

  • WebRTC Complexity: Implementing reliable video conferencing requires fallback mechanisms for NAT traversal, adaptive bitrate for varying network conditions, and graceful degradation when bandwidth is limited
  • SFU Architecture: Using a Selective Forwarding Unit (SFU) architecture dramatically reduces server CPU load compared to mixing
  • Regional Media Servers: Deployed media servers in multiple regions to reduce latency and improve call quality for global users

Azure Cloud Architecture

  • Azure Global Distribution: Azure CDN with regional edge caching reduced average page load times from 8 seconds to under 2 seconds for users in remote locations
  • Blob Storage Strategy: Cost-effective media hosting with hot/cool tiers for frequently and infrequently accessed content
  • Azure SQL Performance: Implemented read replicas and query optimization to handle thousands of concurrent users

Real-Time Scalability with SignalR

  • SignalR + Redis Backplane: Enables horizontal scaling of real-time features across multiple .NET Core instances
  • Connection Management: Each server instance maintains WebSocket connections while Redis coordinates messages
  • Cross-Server Communication: Messages reach users connected to different application servers seamlessly
  • Graceful Degradation: Automatic fallback from WebSockets to Server-Sent Events or long polling

.NET Core Performance Optimization

  • Async/Await Patterns: Leveraging async/await throughout the stack provided excellent performance with minimal memory footprint
  • Entity Framework Core: Compiled queries and proper indexing delivered fast database operations
  • Compiled Code Advantage: C# compiled code provided faster response times than interpreted languages while maintaining developer productivity
  • Dependency Injection: Built-in DI container simplified testing and maintainability

Standards & References

  • WebRTC Standards (W3C): Real-time communication protocols
  • WCAG 2.1 AA: Web accessibility guidelines
  • OAuth 2.0 / OpenID Connect: Authentication and authorization
  • Microsoft Graph API: Microsoft 365 integration standards
  • REST API Design: RESTful service architecture
  • PCI DSS: Payment card industry data security (Stripe & PayPal integration)
  • GDPR Compliance: European data protection regulations
  • ISO 27001: Information security management
Back to Portfolio