How chhemant/vyapaarsaathi works
VyapaarSaathi is a Flutter financial-management app for small businesses, paired with a FastAPI backend. The principal workflow captures a transaction from image and optional speech, stores it, then exposes transaction history, heatmaps, credit scoring, tax answers, and GST invoices. README capabilities also include passive camera capture, voice assistance, multilingual UI, payments, khata, and Office Kit. Sampled backend code shows server-side OCR/ASR and heuristic scoring; unsampled Flutter wiring and several documented features are represented only where paths are supported, with uncertain links omitted.
Main entry points: main.py HTTP API · database.py SQLite records · transaction_pipeline.py Capture pipeline · tax_assistant.py Tax assistant
Components 21
Mobile App
- Dashboard
frontend/lib/screens/dashboard/dashboard_screen.dart - Passive camera
frontend/lib/screens/camera/passive_camera_screen.dart - Voice assistant
frontend/lib/screens/voice_ai/voice_assistant_screen.dart - API client
frontend/lib/services/api_service.dart - Invoice creation
frontend/lib/screens/invoices/create_invoice_screen.dart - Income heatmap
frontend/lib/screens/dashboard/heatmap_screen.dart - Office Kit
frontend/lib/services/office_kit_service.dart
Transaction Capture
- HTTP API
backend/main.py - Capture pipeline
backend/transaction_pipeline.py - OCR and speech
backend/ai_models.py - Transaction history
frontend/lib/screens/transactions/transaction_history_screen.dart
Financial Insights
- Heatmap aggregation
backend/analytics.py - Credit scoring
backend/credit_scorer.py
Tax and Invoices
- Tax assistant
backend/tax_assistant.py - GST invoice PDF
backend/gst_generator.py - Payment tools
frontend/lib/screens/payments/payments_hub_screen.dart - Party ledger
frontend/lib/screens/khata/party_ledger_screen.dart
Data and Files
- SQLite records
backend/database.py - Invoice files
backend/config.py
Other components
- Business owner
- Local language model
Connections 20
- Business owner → Passive camera: captures activity
- Business owner → Voice assistant: asks questions
- Business owner → Dashboard: views finances
- Business owner → Invoice creation: creates invoice
- API client → HTTP API: sends requests
- HTTP API → Capture pipeline: dispatches capture
- Capture pipeline → OCR and speech: extracts amount and speech
- Capture pipeline → SQLite records: writes transaction
- HTTP API → Credit scoring: requests score
- Credit scoring → SQLite records: reads transactions
- HTTP API → Heatmap aggregation: requests heatmap
- Heatmap aggregation → SQLite records: reads transactions
- HTTP API → Tax assistant: dispatches query
- Tax assistant → SQLite records: reads monthly totals
- Tax assistant → Local language model: prompts for answer
- HTTP API → GST invoice PDF: requests PDF
- HTTP API → SQLite records: looks up customer
- GST invoice PDF → Invoice files: writes PDF
- HTTP API → Invoice files: serves PDF
- Dashboard → Income heatmap: opens insights