An AI-powered tool that watches a folder for research papers (PDF/TXT) and automatically generates summaries with key insights.
- 📁 Auto-watch: Drop papers into the
papers/folder - 🤖 AI Analysis: Uses OpenAI to extract key insights
- 🌐 Web Interface: View summaries at http://localhost:3000
- 🔄 Live Updates: Auto-refreshes every 30 seconds
- Node.js (v18 or higher) - Download
- OpenAI API key - Get one here
-
Clone and install:
git clone https://github.com/EARTHTOEDWARD/research-paper-summarizer.git cd research-paper-summarizer npm install -
Set your OpenAI API key:
export OPENAI_API_KEY="your-api-key-here"
-
Start the backend (watches for papers):
cd backend npm install npm run dev -
Start the frontend (in a new terminal):
cd frontend npm install npm run dev -
Add papers:
- Drop PDF or TXT files into the
papers/folder - Watch them appear at http://localhost:3000
- Drop PDF or TXT files into the
- Backend watches the
papers/folder for new PDF/TXT files - Extracts text and metadata (title, authors)
- Sends to OpenAI for insight generation
- Saves summaries to
docs/research-insights.md - Frontend displays the summaries with auto-refresh
- Watch folder:
papers/(configurable in backend) - Output file:
docs/research-insights.md - Token limit: 200,000 per day (configurable via
DAILY_TOKEN_BUDGET) - Refresh rate: 30 seconds (frontend)
If you prefer Docker:
docker-compose upThis starts both backend and frontend in containers.
When you add a paper, you'll see something like:
## Understanding Complex Systems
- **Authors:** Jane Smith, John Doe
- **Source:** complexity-theory.pdf
- **Key insights:**
- Complex systems exhibit emergent behavior
- Feedback loops are crucial in system dynamics
- Non-linear interactions lead to unpredictability"OPENAI_API_KEY not set"
- Make sure to export your API key before starting
"Port 3000 already in use"
- The frontend will suggest an alternative port
Papers not being processed
- Check the backend terminal for errors
- Ensure files are PDF or TXT format
- Check your OpenAI API key is valid
- All processing happens locally on your machine
- Only the text is sent to OpenAI for summarization
- No data is stored externally
MIT