How chikatlasireendra/rakshapay works
RakshaPay is a scam-safety application for analyzing suspicious messages, payment requests, and call recordings, then reviewing or contributing community scam reports. Users register or sign in, submit evidence to an analyzer, receive risk guidance, and can explore patterns or share incidents. The frontend routes these experiences to a FastAPI backend; message and call analysis can use Gemini, while message analysis includes deterministic fallback logic. Authenticated profile and community actions also use backend APIs, with browser-local data supporting session and demo experiences. Backend route and service wiring is inferred only where imports or calls are evidenced; unsampled routes are not detailed.
Main entry points: App.tsx App navigation · apiClient.ts API client · api.py API routes · authService.ts Authentication service
Components 25
User experience
- App navigation
RakshaPay/src/App.tsx - Login and registration
RakshaPay/src/pages/LoginPage.tsx - Message analyzer
RakshaPay/src/pages/MessageAnalyzer.tsx - Payment analyzer
RakshaPay/src/pages/PaymentAnalyzer.tsx - Call analyzer
RakshaPay/src/pages/CallAnalyzer.tsx - Report scam
RakshaPay/src/pages/ReportScamPage.tsx - Community feed
RakshaPay/src/pages/CommunityFeedPage.tsx - Scam intelligence
RakshaPay/src/pages/ScamIntelligencePage.tsx - User dashboard
RakshaPay/src/pages/UserDashboardHome.tsx
Scam analysis
- Message analysis
RakshaPay/backend/services/analysis_service.py - Gemini analysis
RakshaPay/backend/services/gemini_service.py - Call analysis
RakshaPay/src/services/callAnalysisService.ts - Payment analysis
RakshaPay/src/services/paymentAnalysisService.ts
Community intelligence
- Community reports
RakshaPay/src/services/communityService.ts - Community groups
RakshaPay/src/services/communityGroupsService.ts
Backend services
- API client
RakshaPay/src/services/apiClient.ts - API routes
RakshaPay/backend/routes/api.py - FastAPI application
RakshaPay/backend/main.py - Firestore
RakshaPay/backend/firebase/firestore.py - Backend store
RakshaPay/backend/store.py
User state
- Authentication service
RakshaPay/src/services/authService.ts - Local session
RakshaPay/src/services/authServiceLocal.ts - User data
RakshaPay/src/services/userDataService.ts
Other components
- User
- Gemini API
Connections 30
- User → App navigation: uses
- App navigation → Login and registration: renders
- App navigation → Message analyzer: renders
- App navigation → Payment analyzer: renders
- App navigation → Call analyzer: renders
- App navigation → Report scam: renders
- App navigation → Community feed: renders
- App navigation → Scam intelligence: renders
- App navigation → User dashboard: renders
- Login and registration → Authentication service: authenticates
- Authentication service → API client: requests
- Authentication service → Local session: persists session
- App navigation → Authentication service: checks session
- Message analyzer → API client: submits analysis
- Payment analyzer → Payment analysis: analyzes payment
- Call analyzer → Call analysis: analyzes recording
- Report scam → Community reports: submits report
- Community feed → Community reports: loads reports
- Community feed → Community groups: loads groups
- User dashboard → User data: loads user data
- API client → FastAPI application: HTTP requests
- FastAPI application → API routes: dispatches
- API routes → Message analysis: analyzes message
- Message analysis → Gemini analysis: requests analysis
- Gemini analysis → Message analysis: returns analysis
- API routes → Firestore: reads and writes
- API routes → Backend store: reads and writes
- Community reports → API client: report actions
- Call analysis → API client: uploads recording
- Payment analysis → API client: submits payment