How rudr-automates/pixel-perfect-pixels works
AgriVoice is a voice-first community agricultural knowledge archive, not an advisory chatbot. Its core loop is capturing a spoken contribution, transcribing and structuring it, saving it, making it searchable, and letting people trace the contributor and report outcomes. The graph also preserves the distinct community and scientific evidence views. Wiring is based on the README’s architecture and sampled source; unsampled subsystems are included where their paths and product capabilities are clear, but uncertain implementation links are omitted.
Main entry points: knowledge-repository.ts Repository interface · knowledge.$id.tsx Knowledge detail · VoiceQueryBar.tsx Voice query bar · useCreateKnowledge.ts Knowledge creation hook
Components 25
User experience
- Home page
src/routes/index.tsx - Record page
src/routes/record.tsx - Search page
src/routes/search.tsx - Explore page
src/routes/explore.tsx - Knowledge detail
src/routes/knowledge.$id.tsx - Voice query bar
src/features/search/VoiceQueryBar.tsx - Outcome reporting
src/features/outcomes/OutcomeReporting.tsx - Knowledge presentation
src/components/knowledge/StructuredKnowledge.tsx - Evidence panels
src/components/evidence/ScientificEvidencePanel.tsx
Capture and structure
- Voice capture
src/hooks/useVoiceCapture.ts - Knowledge creation hook
src/hooks/useCreateKnowledge.ts - Speech service
src/lib/services/speech/speech-service.ts - Structure endpoint
src/routes/api/structure-knowledge.ts - Understanding service
src/lib/services/knowledge/understanding-service.ts
Search and evidence
- Search hook
src/hooks/useKnowledgeSearch.ts - Knowledge search
src/lib/services/search/knowledge-search-service.ts
Services and data
- Knowledge service
src/lib/services/knowledge/knowledge-service.ts - Outcome service
src/lib/services/outcome/outcome-service.ts - Evidence service
src/lib/services/evidence/evidence-service.ts - Repository interface
src/lib/repositories/knowledge-repository.ts - Demo repository
src/lib/repositories/demo-knowledge-repository.ts - Supabase repository
src/lib/repositories/supabase-knowledge-repository.ts
Other components
- Community member
- Sarvam speech
- Gemini model
Connections 31
- Community member → Home page: asks or browses
- Community member → Record page: records knowledge
- Community member → Knowledge detail: reviews record
- Home page → Voice query bar: offers query
- Voice query bar → Voice capture: captures audio
- Voice query bar → Speech service: transcribes
- Voice query bar → Search page: submits query
- Record page → Voice capture: captures recording
- Record page → Knowledge creation hook: creates record
- Knowledge creation hook → Speech service: transcribes
- Knowledge creation hook → Structure endpoint: requests structure
- Structure endpoint → Understanding service: structures transcript
- Knowledge creation hook → Knowledge service: saves contribution
- Search page → Search hook: runs search
- Search hook → Knowledge search: requests matches
- Knowledge search → Understanding service: interprets query
- Knowledge search → Repository interface: searches records
- Explore page → Repository interface: lists records
- Knowledge detail → Knowledge service: loads record
- Knowledge detail → Outcome reporting: offers reporting
- Knowledge detail → Evidence service: loads evidence
- Knowledge detail → Knowledge presentation: displays record
- Knowledge detail → Evidence panels: displays evidence
- Outcome reporting → Outcome service: submits outcome
- Knowledge service → Repository interface: reads and writes
- Outcome service → Repository interface: adds and lists reports
- Evidence service → Repository interface: loads evidence
- Repository interface → Demo repository: implemented by
- Repository interface → Supabase repository: implemented by
- Speech service → Sarvam speech: transcribes audio
- Understanding service → Gemini model: interprets content