How anushkapunekar/bizgenie works
BizGenie is a small-business support agent with business-profile and document management, customer chat, appointment scheduling, and outbound messaging. The principal customer flow is chat through the frontend API to the LangGraph agent, which routes questions to FAQ or document retrieval and can dispatch tool actions before returning a reply. Businesses can register and upload PDFs; the upload route records the document and indexes its content for later retrieval. The graph reflects README-described branches where implementation was not sampled; exact wiring for those branches is therefore limited.
Main entry points: business.py Business management · main.py FastAPI app · graph.py Intent routing · tools_executor.py Tool execution
Components 28
Web experience
- Web application
frontend/src/App.tsx - Business pages
frontend/src/pages/BusinessDashboard.tsx - Chat page
frontend/src/pages/Chat.tsx - Document upload
frontend/src/components/DocumentUpload.tsx - API client
frontend/src/services/api.ts
API and business data
- FastAPI app
app/main.py - Business management
app/routes/business.py - Chat endpoint
app/routes/chat.py - Appointments API
app/routes/appointments.py - Business records
app/models.py - Relational database
app/database.py - Document files
app/routes/business.py
Chat and knowledge
- Intent routing
app/agents/graph.py - FAQ answers
app/agents/nodes/faq.py - Document answers
app/agents/nodes/rag.py - PDF ingestion
app/rag/ingest.py - Vector index
app/rag/vectorstore.py - Tool execution
app/agents/nodes/tools_executor.py - Language model service
app/llm_service.py
Scheduling and messaging
- Calendar tool
app/tools/calendar_mcp.py - Email tool
app/tools/email_mcp.py - WhatsApp tool
app/tools/whatsapp_mcp.py
Other components
- Business owner
- Customer
- Calendar service
- SMTP service
- WhatsApp service
- Supabase storage
Connections 31
- Business owner → Web application: uses
- Customer → Web application: opens chat
- Web application → Business pages: shows routes
- Web application → Chat page: shows route
- Business pages → API client: requests data
- Document upload → API client: uploads PDF
- Chat page → API client: sends message
- API client → FastAPI app: calls API
- FastAPI app → Business management: dispatches
- FastAPI app → Chat endpoint: dispatches
- FastAPI app → Appointments API: dispatches
- Business management → Business records: reads/writes
- Business management → Relational database: uses sessions
- Business management → Document files: stores files
- Business management → Vector index: indexes document
- Business management → Email tool: notifies by email
- Business management → WhatsApp tool: notifies by WhatsApp
- Chat endpoint → Intent routing: runs agent
- Intent routing → FAQ answers: routes FAQ
- Intent routing → Document answers: routes retrieval
- Intent routing → Tool execution: dispatches tools
- Document answers → Vector index: queries
- PDF ingestion → Vector index: adds chunks
- Appointments API → Relational database: uses sessions
- Tool execution → Calendar tool: invokes
- Tool execution → Email tool: invokes
- Tool execution → WhatsApp tool: invokes
- Calendar tool → Calendar service: connects
- Email tool → SMTP service: sends mail
- WhatsApp tool → WhatsApp service: sends message
- Business management → Supabase storage: optional storage