How aisocietyiitj/papertrail works
PaperTrail exposes three research workflows: building foundational reading paths, matching researchers to academic profiles using a query and optional resume, and recommending papers. The sampled code supports the API-to-backend calls and the reading-path query’s Pinecone/Neo4j interactions; the README is empty, and several frontend routes and backend helpers were not sampled, so their internal wiring is left out.
Main entry points: main.py Use-case orchestration · App.jsx Application routes · query.py Path query · vec_query_search.py Interest vector search
Components 22
Web application
- Application routes
frontend/papertraiFrontend/src/App.jsx - Reading path view
frontend/papertraiFrontend/src/routes/ResearchPath.jsx - Researcher match
frontend/papertraiFrontend/src/routes/ResearcherMatch.jsx - Problem discovery
frontend/papertraiFrontend/src/routes/ProblemDiscovery.jsx
API and orchestration
- FastAPI endpoints
app.py - Use-case orchestration
main.py - Paper recommendations
main.py - Recommendation preparation
src/usecase_3/Cleaning.py
Reading paths
- Graph build pipeline
src/usecase_1/main.py - Path query
src/usecase_1/query.py - Graph ingestion
src/usecase_1/ingest_neo4j.py - Research graph
- Paper vector search
src/usecase_1/query.py - Paper vectors
Academic profiles
- Profile setup
main.py - Interest extraction
src/usecase_2/local_llm/extractor.py - Interest vector search
src/usecase_2/utils/vec_query_search.py - Professor lookup
src/usecase_2/utils/get_prof_info.py - Profile vectors
- Academic graph
- Local language model
Other components
- Researcher
Connections 20
- Researcher → Application routes: uses
- Application routes → Reading path view: routes to
- Application routes → Researcher match: routes to
- Application routes → Problem discovery: routes to
- FastAPI endpoints → Use-case orchestration: calls
- Use-case orchestration → Path query: queries
- Use-case orchestration → Paper recommendations: recommends
- Use-case orchestration → Interest extraction: extracts interests
- Use-case orchestration → Interest vector search: searches interests
- Use-case orchestration → Professor lookup: looks up professors
- Use-case orchestration → Profile setup: runs setup
- Graph build pipeline → Graph ingestion: ingests graph
- Graph ingestion → Research graph: writes nodes and edges
- Path query → Paper vector search: embeds query
- Paper vector search → Paper vectors: searches vectors
- Path query → Research graph: traverses prerequisites
- Interest vector search → Profile vectors: searches vectors
- Interest vector search → Local language model: embeds query
- Professor lookup → Academic graph: queries profiles
- Paper recommendations → Recommendation preparation: uses