Inspiration

As a developer interested in research tools, I was frustrated by how hard it is to find connections between research papers. Inspired by knowledge graph concepts and modern AI capabilities, I wanted to build a system that could automatically discover and visualize relationships between scientific papers.

What it does

ResearchReasoner searches academic databases and builds interactive knowledge graphs:

  • Searches arXiv and Semantic Scholar APIs for research papers
  • Downloads PDFs and extracts content when available
  • Creates connections based on shared authors, citations, and content similarity
  • Stores everything in a Neo4j graph database
  • Provides a chat interface to ask questions about the papers
  • Visualizes the research network with an interactive graph

How we built it

Frontend: React with TypeScript, using react-force-graph-2d for visualizations Backend: Node.js/Express server with Neo4j database AI Integration: Groq API for chat responses, custom embeddings for search APIs: Semantic Scholar and arXiv for paper discovery

The system searches for papers, analyzes relationships (shared authors, similar content, citations), stores everything in Neo4j, and provides both visual exploration and chat-based querying.

Challenges we ran into

  • API Rate Limits: Had to implement proper delays and fallbacks when paper APIs failed
  • PDF Processing: Many papers aren't freely available, so created text fallbacks
  • Graph Performance: Rendering thousands of nodes required optimization and sampling
  • Search Quality: Tuning the relationship detection algorithms to find meaningful connections

Accomplishments that we're proud of

  • Successfully integrated multiple academic APIs (arXiv, Semantic Scholar)
  • Built a working graph database that stores papers and relationships
  • Created an interactive visualization that can handle hundreds of papers
  • Implemented a functional chat interface that can answer questions about the research
  • Got the full pipeline working: search → download → analyze → store → visualize → query→new research

What we learned

  • Academic APIs have significant limitations and require robust error handling
  • Graph databases like Neo4j are great for storing research relationships
  • Building embeddings locally can work better than API calls for specific use cases
  • Interactive graph visualizations need careful performance optimization
  • Real research tools need to handle messy, incomplete data gracefully

What's next for ResearchReasoner

  • Improve PDF access through better source discovery
  • Add more relationship types (temporal patterns, methodology similarities)
  • Enhance the chat interface with better context understanding
  • Add export features for research notes and bibliographies
  • Optimize graph rendering for larger datasets

Built With

Share this project:

Updates