How llewellynkearney/jagspoor_v4_2 works
JagSpoor is presented as a Flutter app, with supporting Firebase Cloud Functions and a Telegram bot. The main user-facing Flutter source is not present in the supplied tree, so its hunting, navigation, and booking workflows cannot be traced here. The visible backend supports account administration, subscriptions and billing, notifications, referrals, and KPIs; the bot exposes hunting and outfitter commands backed by Firebase. The graph focuses on these evidenced runtime components. Unsampled modules are included where the source index identifies them, but their internal behavior and some links remain unverified.
Main entry points: index.ts Function exports · payfast.ts PayFast handlers · firebase.ts Admin Firebase · alternative_billing.ts Alternative billing
Components 23
Firebase backend
- Function exports
functions/src/index.ts - Admin Firebase
functions/src/firebase.ts - Notifications
functions/src/notifications.ts - Email delivery
functions/src/email.ts - Runtime parameters
functions/src/params.ts - Admin KPIs
functions/src/admin/kpis.ts - Referrals
functions/src/referral.ts - Trial onboarding
functions/src/user_trial_onboarding.ts
Billing and entitlements
- Entitlements
functions/src/entitlement.ts - Alternative billing
functions/src/alternative_billing.ts - PayFast handlers
functions/src/payfast/payfast.ts - PayFast signing
functions/src/payfast/payfast.service.ts - Plan catalog
functions/src/payfast/plans.ts
Telegram bot
- Bot webhook
telegram_bot/webhook_server.py - Hunter commands
telegram_bot/command_handlers.py - Outfitter commands
telegram_bot/command_handlers_part2.py - Bot Firebase service
telegram_bot/firebase_service.py
App and data utilities
- Windows app runner
windows/runner/main.cpp - SAPS scraper template
lib/features/hunter_mode/services/saps_scraper_template.js - Animal register generator
data/animals/generate_register.py
Other components
- Flutter clients
- Firestore and Auth
- Telegram users
Connections 32
- Flutter clients → Function exports: calls billing
- Function exports → Admin Firebase: uses admin SDK
functions/src/index.ts - Function exports → Notifications: exports triggers
functions/src/index.ts - Function exports → Entitlements: exports handlers
functions/src/index.ts - Function exports → Referrals: exports handlers
functions/src/index.ts - Function exports → PayFast handlers: exports handlers
functions/src/index.ts - Function exports → Alternative billing: exports handlers
functions/src/index.ts - Function exports → Admin KPIs: exports handlers
functions/src/index.ts - Function exports → Trial onboarding: exports handlers
functions/src/index.ts - Notifications → Email delivery: uses delivery
functions/src/notifications.ts - Notifications → Runtime parameters: reads settings
functions/src/notifications.ts - Notifications → Admin Firebase: uses admin SDK
functions/src/notifications.ts - Admin KPIs → Admin Firebase: uses admin SDK
functions/src/admin/kpis.ts - Trial onboarding → Admin Firebase: uses admin SDK
functions/src/user_trial_onboarding.ts - Trial onboarding → Runtime parameters: reads settings
functions/src/user_trial_onboarding.ts - Entitlements → Admin Firebase: writes entitlements
functions/src/entitlement.ts - Entitlements → Firestore and Auth: reads Play status
- Alternative billing → Admin Firebase: uses admin SDK
functions/src/alternative_billing.ts - Alternative billing → Entitlements: updates access
functions/src/alternative_billing.ts - Alternative billing → Plan catalog: resolves plans
functions/src/alternative_billing.ts - PayFast handlers → PayFast signing: uses signing
functions/src/payfast/payfast.ts - PayFast handlers → Plan catalog: resolves plans
functions/src/payfast/payfast.ts - PayFast handlers → Runtime parameters: reads settings
functions/src/payfast/payfast.ts - PayFast handlers → Entitlements: updates access
functions/src/payfast/payfast.ts - PayFast handlers → Alternative billing: uses billing
functions/src/payfast/payfast.ts - PayFast handlers → Firestore and Auth: verifies payments
- Telegram users → Bot webhook: sends commands
- Bot webhook → Hunter commands: dispatches
telegram_bot/webhook_server.py - Bot webhook → Outfitter commands: dispatches
telegram_bot/webhook_server.py - Hunter commands → Bot Firebase service: loads user data
telegram_bot/command_handlers.py - Outfitter commands → Bot Firebase service: loads business data
telegram_bot/command_handlers_part2.py - Bot Firebase service → Firestore and Auth: reads records