How kiranmgowda0105-max/dhruva_guardian_ works
Dhruva appears to be a digital-arrest scam warning product: its web client listens to speech, scores transcripts against staged scam phrases, presents warnings and can send event reports or export evidence. The backend exposes event and alert endpoints and can notify paired Telegram chats. The tree also contains an Android app, but its runtime behavior is unsampled; its relationships are therefore shown only as unverified. The README provides no substantive capability or setup details.
Main entry points: App.tsx Monitoring Interface · GuardianService.kt Guardian Service · score.ts Transcript Scorer · api.ts Event Client
Components 22
Web Monitoring
- Monitoring Interface
web/src/App.tsx - Speech Listener
web/src/hooks/useSpeechListener.ts - Risk Gauge
web/src/components/RiskGauge.tsx - Scam Timeline
web/src/components/ScamTimeline.tsx - Red Alert
web/src/components/RedAlert.tsx - Matched Phrases
web/src/components/MatchedPhrases.tsx - Voice Warning
web/src/lib/voice.ts - Evidence PDF
web/src/lib/evidence.ts
Scam Analysis
- Transcript Scorer
web/src/engine/score.ts - Stage Phrase Rules
web/src/engine/rules.ts
Alert Backend
- Event Client
web/src/lib/api.ts - HTTP API
api/main.py - API Models
api/models.py - Event State
api/state.py - Telegram Notifier
api/telegram_bot.py
Android App
- Android Interface
android/app/src/main/java/com/example/dhruvaguardian/MainActivity.kt - Guardian Service
android/app/src/main/java/com/example/dhruvaguardian/GuardianService.kt - Accessibility Monitor
android/app/src/main/java/com/example/dhruvaguardian/GuardianAccessibilityService.kt - Boot Receiver
android/app/src/main/java/com/example/dhruvaguardian/BootReceiver.kt - Alert Screen
android/app/src/main/java/com/example/dhruvaguardian/AlertActivity.kt
Other components
- User
- Telegram
Connections 19
- User → Monitoring Interface: uses
- Monitoring Interface → Speech Listener: starts listening
web/src/App.tsx - Monitoring Interface → Transcript Scorer: scores transcript
web/src/App.tsx - Transcript Scorer → Stage Phrase Rules: matches phrases
web/src/engine/score.ts - Monitoring Interface → Risk Gauge: renders score
web/src/App.tsx - Monitoring Interface → Scam Timeline: renders stages
web/src/App.tsx - Monitoring Interface → Red Alert: shows alert
web/src/App.tsx - Monitoring Interface → Matched Phrases: renders matches
web/src/App.tsx - Monitoring Interface → Voice Warning: speaks warning
web/src/App.tsx - Monitoring Interface → Evidence PDF: builds report
web/src/App.tsx - Monitoring Interface → Event Client: sends events
web/src/App.tsx - Event Client → HTTP API: posts event
- HTTP API → Telegram Notifier: notifies on red
api/main.py - Telegram Notifier → Telegram: sends messages
api/telegram_bot.py - User → Android Interface: uses
- Android Interface → Guardian Service: starts monitoring
- Guardian Service → Accessibility Monitor: uses service
- Boot Receiver → Guardian Service: starts on boot
- Guardian Service → Alert Screen: shows alert