A tool that helps researchers analyze academic papers and identify unexplored areas, conflicting findings, and limitations—making it easier to find your next thesis topic or research project.
The tool uses Gemini 2.0 Flash to analyze methodology gaps and automatically generates a corresponding Mermaid.js flowchart.
- Automated Analysis: Processes PDF or text-based research papers
- Cross-Reference Analysis: Uses Gemini 2.0 Flash to identify patterns and gaps across multiple papers
- Visual Methodology: Automatically generates Mermaid.js flowcharts to visualize proposed research paths
- Type-Safe Implementation: Built with TypeScript for robust data handling
- Frontend: React 19, TypeScript
- AI Integration: Google Generative AI (Gemini API)
- Styling: Tailwind CSS, Lucide React (Icons)
- Visualization: Mermaid.js
# Clone the repository
git clone https://github.com/BoonHow97/research-gap-hunter.git
cd research-gap-hunter
# Install dependencies
npm install
# Set up environment variables
cp .env.example .env
# Add your Gemini API key to .env
# Start development server
npm start- Upload one or more research papers (PDF or text format)
- Click "Analyze" to process the papers
- Review identified gaps in the results panel
- Explore the generated methodology flowchart
- Export findings for your research proposal
├── public/
│ └── index.html # Application entry point
├── src/
│ ├── components/ # UI components (Sidebar, ResultsView)
│ ├── services/ # API integration logic
│ ├── types/ # TypeScript interfaces and definitions
│ ├── App.tsx # Root application component
│ └── index.tsx # React DOM mounting logic
├── .gitignore # Git exclusion rules
├── package.json # Dependencies and scripts
└── README.md # Project documentation
- Support for additional AI models (Claude, GPT-4)
- Export to LaTeX format
- Collaborative gap analysis features
- Citation network visualization
Contributions are welcome! Feel free to open an issue or submit a pull request.
MIT License - see LICENSE file for details
For questions or feedback, please open an issue on GitHub.

