A web application that helps researchers identify gaps in scientific literature. Upload academic papers and get an interactive visual map of what's been studied vs. what hasn't, contradictions between papers, and promising unexplored research questions.
- Upload Papers — Drop in PDFs or text files of academic papers
- AI Extraction — Claims, findings, and methodologies are extracted from each paper using Claude
- Knowledge Map — An interactive graph visualizes topics and their relationships
- Contradiction Detection — Conflicting claims across papers are surfaced and compared
- Gap Analysis — Under-explored areas and missing connections are identified
- Research Questions — Promising questions are generated and ranked by impact and feasibility
This is a fully client-side static application deployed to GitHub Pages. There is no backend — all processing happens in the browser using the user's own Anthropic API key.
- Framework: Next.js 15 (App Router, static export)
- AI: Anthropic JS SDK (direct browser-to-API calls)
- PDF Parsing: pdfjs-dist (browser worker)
- Graph Visualization: Cytoscape.js
- Charts: Recharts
- UI: shadcn/ui + Tailwind CSS v4
- Storage: IndexedDB via Dexie.js (all data stays in browser)
npm install
npm run dev # Start dev server
npm run build # Static export to out/
npm run check # Biome lint + format check
npm run format # Biome auto-fix
npm run typecheck # TypeScript type checking
npm run test # Run tests with VitestThe app deploys automatically to GitHub Pages via GitHub Actions on push to main. It's served at https://<username>.github.io/kg/.
All data stays in your browser's IndexedDB. Your API key is stored locally and used only for direct calls to the Anthropic API. Nothing is sent to any server other than Anthropic's API.