How shayantan1012/gatemind-ai works
GATEMIND-AI is a GATE-preparation platform combining student accounts and profiles, evaluated mock exams, personalized performance analysis, document-grounded study chat, and an administration workspace. The principal student flow runs from the React portal through Flask endpoints to application services and persistent data; mock-test submissions yield scores and subject insights, while study-material uploads are indexed for cited chat answers. The graph preserves documented admin and AI capabilities. Some subsystem links rely on README architecture because their implementations were not sampled.
Main entry points: api.js API Client · App.jsx Portal App · indexing_pipeline.py Document Indexer · rag_chat_service.py RAG Chat Service
Components 34
Student and Admin UI
- Portal App
frontend/src/App.jsx - Auth Panel
frontend/src/components/AuthPanel.jsx - Profile Panel
frontend/src/components/ProfilePanel.jsx - Mock Test Panel
frontend/src/components/MockTestPanel.jsx - RAG Panel
frontend/src/components/RagPanel.jsx - Admin Panel
frontend/src/components/AdminPanel.jsx - API Client
frontend/src/lib/api.js
Identity and Profiles
- Auth Controller
backend/app/controllers/auth_controller.py - Authentication Service
backend/app/services/auth/authentication_service.py - User Controller
backend/app/controllers/user_controller.py - User Service
backend/app/services/users/user_service.py - OTP Verification
backend/app/services/verification/otp_verification_service.py
Mock Tests
- Mock Test Controller
backend/app/controllers/mock_test_controller.py - Test Application Service
backend/app/services/mocktest/mock_test_application_service.py - Evaluation and Analysis
backend/app/services/mocktest/evaluation.py
Study Assistant
- RAG Controller
backend/app/controllers/rag_controller.py - Document Indexer
backend/app/services/rag/indexing/indexing_pipeline.py - Document Parsers
backend/app/services/rag/parsers - Chunking Strategy
backend/app/services/rag/chunking - Embeddings
backend/app/services/rag/embeddings - Vector Store
backend/app/services/rag/vectorstores - RAG Chat Service
backend/app/services/rag/rag_chat_service.py - Hybrid Retrieval
backend/app/services/rag/retrievers - Context Builder
backend/app/services/rag/context_builder.py - LLM Providers
backend/app/services/rag/llm_service_factory.py
Administration
- Admin Controller
backend/app/controllers/admin_controller.py - Admin Services
backend/app/services/admin - Storage Maintenance
backend/app/services/admin/storage_maintenance_service.py
Persistence
- RAG Repository
backend/app/repositories/mongo_rag_repository.py - MongoDB
Other components
- Student
- Administrator
- External AI Provider
- OTP Provider
Connections 47
- Student → Portal App: uses portal
- Administrator → Portal App: uses admin
- Portal App → Auth Panel: mounts
- Portal App → Profile Panel: mounts
- Portal App → Mock Test Panel: mounts
- Portal App → RAG Panel: mounts
- Portal App → Admin Panel: mounts
- Auth Panel → API Client: sends requests
- Profile Panel → API Client: sends requests
- Mock Test Panel → API Client: sends requests
- RAG Panel → API Client: sends requests
- Admin Panel → API Client: sends requests
- API Client → Auth Controller: REST requests
- API Client → User Controller: REST requests
- API Client → Mock Test Controller: REST requests
- API Client → RAG Controller: REST requests
- API Client → Admin Controller: REST requests
- Auth Controller → Authentication Service: delegates
- Authentication Service → OTP Verification: sends and verifies OTP
- OTP Verification → OTP Provider: sends OTP
- Authentication Service → MongoDB: persists users
- User Controller → User Service: delegates
- User Service → MongoDB: reads and updates profiles
- Mock Test Controller → Test Application Service: delegates
- Test Application Service → Evaluation and Analysis: evaluates submissions
- Evaluation and Analysis → MongoDB: stores performance
- RAG Controller → Document Indexer: indexes uploads
- Document Indexer → Document Parsers: parses files
- Document Indexer → Chunking Strategy: splits documents
- Document Indexer → Embeddings: embeds chunks
- Document Indexer → RAG Repository: saves document
- Document Indexer → Vector Store: adds vectors
- Vector Store → MongoDB: stores vectors
- RAG Controller → RAG Chat Service: asks and manages chats
- RAG Chat Service → Hybrid Retrieval: retrieves and reranks
- RAG Chat Service → Context Builder: builds context
- RAG Chat Service → LLM Providers: generates answer
- LLM Providers → External AI Provider: calls configured provider
- RAG Chat Service → RAG Repository: loads and saves chats
- RAG Chat Service → MongoDB: loads user profile
- Hybrid Retrieval → Vector Store: searches chunks
- Admin Controller → Admin Services: delegates operations
- Admin Controller → Document Indexer: indexes admin documents
- Admin Controller → RAG Repository: manages documents
- Admin Controller → Storage Maintenance: cleans uploads
- Admin Services → MongoDB: manages users and content
- Storage Maintenance → MongoDB: preserves RAG records