How roxxsujal7/brambedkar works
The Dr. B. R. Ambedkar Digital Heritage Archive is a research and public-access platform for the BAWS corpus and related historical material. Visitors browse volumes, letters, media, debates, memorials and vows; they can search across collections, read or stream documents, and use OCR or a grounded assistant. Accounts support researcher workflows such as bookmarks and reading progress. The frontend and Express API provide the user-to-result path, with MongoDB-backed models and local catalog fallbacks. README capabilities are represented where routes or frontend modules identify them; unsampled route internals and external-service wiring are not inferred.
Main entry points: app.js Web application · server.js Express application · api.js API client · db.js MongoDB
Components 29
Archive experience
- Web application
ambedkar-archive/frontend/js/app.js - Works reader
ambedkar-archive/frontend/js/archive.js - Document reader
ambedkar-archive/frontend/js/reader.js - Letters browser
ambedkar-archive/frontend/js/letters.js - Speeches and media
ambedkar-archive/frontend/js/media.js - Archive search
ambedkar-archive/frontend/js/search.js - AI assistant
ambedkar-archive/frontend/js/assistant.js - Manuscript OCR
ambedkar-archive/frontend/js/ocr.js - Historical timeline
ambedkar-archive/frontend/js/timeline.js - API client
ambedkar-archive/frontend/js/api.js
API and domain
- Express application
ambedkar-archive/backend/server.js - Document catalog
ambedkar-archive/backend/routes/documents.js - Catalog service
ambedkar-archive/backend/services/documentService.js - Unified search
ambedkar-archive/backend/routes/search.js - Hybrid retrieval
ambedkar-archive/backend/services/hybridSearchService.js - Assistant endpoint
ambedkar-archive/backend/routes/chat.js - Heritage features
ambedkar-archive/backend/routes
Identity and research
- Authentication routes
ambedkar-archive/backend/routes/auth.js - User service
ambedkar-archive/backend/services/userService.js - JWT access control
ambedkar-archive/backend/middleware/auth.js - Bookmarks
ambedkar-archive/backend/routes/bookmarks.js - Reading progress
ambedkar-archive/backend/routes/progress.js
Persistence and integrations
- MongoDB
ambedkar-archive/backend/config/db.js - Document records
ambedkar-archive/backend/models/Document.js - User records
ambedkar-archive/backend/models/User.js - Bookmark records
ambedkar-archive/backend/models/Bookmark.js - Progress records
ambedkar-archive/backend/models/ReadingProgress.js
Other components
- Archive visitor
- Google Gemini
Connections 40
- Archive visitor → Web application: uses
- Web application → Works reader: opens collection
- Web application → Document reader: opens reading
- Web application → Letters browser: browses letters
- Web application → Speeches and media: browses media
- Web application → Archive search: starts search
- Web application → AI assistant: asks questions
- Web application → Manuscript OCR: digitizes pages
- Web application → Historical timeline: explores events
- Works reader → API client: requests volumes
- Document reader → API client: requests documents
- Letters browser → API client: requests letters
- Speeches and media → API client: requests media
- Archive search → API client: submits query
- AI assistant → API client: submits question
- Manuscript OCR → API client: sends OCR request
- API client → Express application: calls API
- Express application → Document catalog: dispatches
- Express application → Unified search: dispatches
- Express application → Assistant endpoint: dispatches
- Express application → Authentication routes: dispatches
- Express application → Bookmarks: dispatches
- Express application → Reading progress: dispatches
- Express application → Heritage features: dispatches
- Document catalog → Catalog service: queries catalog
- Unified search → Catalog service: loads fallback catalog
- Unified search → Document records: queries records
- Authentication routes → User service: manages accounts
- JWT access control → User service: resolves user
- Bookmarks → JWT access control: checks identity
- Reading progress → JWT access control: checks identity
- Catalog service → Document records: reads records
- User service → User records: reads and writes
- Bookmarks → Bookmark records: stores bookmarks
- Reading progress → Progress records: stores progress
- Document records → MongoDB: persists
- User records → MongoDB: persists
- Bookmark records → MongoDB: persists
- Progress records → MongoDB: persists
- Assistant endpoint → Google Gemini: requests generation