Automatically get the best Computer Science papers from arXiv delivered to your email. Stay updated with top research without the noise.
TopPapersAI is a local-first research monitoring tool. It fetches recent arXiv papers, scores them with a configurable ranking strategy, stores subscribers locally, and sends digest emails. The project is intended as a practical automation tool rather than a hosted newsletter service.
- Email notifications with top-rated papers
- 3 scoring methods: Rule-based, Transformer, or API (ChatGPT/Claude/Gemini)
- Easy setup - works in 5 minutes
- Privacy-focused - your data stays local
# Install
git clone https://github.com/Kevin-Li-2025/TopPapersAI.git
cd TopPapersAI
pip install -r requirements.txt
# Configure email (copy example and edit)
cp env_example.txt .env
# Edit .env with your email settings
# Register yourself
python3 cli.py register --email your@email.com --name "Your Name"
# Get papers
python3 cli.py notifypython3 cli.py register --email user@example.com # Add new user
python3 cli.py notify # Send latest papers
python3 cli.py papers # View available papers
python3 cli.py users # List users
python3 cli.py scoring-methods # Compare scoring optionscli.py Command-line entry point
config.py Runtime configuration and environment loading
paper_fetcher.py arXiv query and paper normalization
scorer.py Rule/API/model scoring strategies
email_sender.py Digest rendering and SMTP delivery
templates/ Email templates
static/ Optional local web assets
- Subscriber data stays in the local project environment.
- Email credentials should be stored in
.env, not committed. - API-based scoring is optional; rule-based scoring can run without external model providers.
- Enable 2-Factor Authentication
- Generate App Password: Google Account Settings → Security → App Passwords
- Update
.env:EMAIL_FROM=your@gmail.com EMAIL_PASSWORD=your_16_char_app_password
| Method | Speed | Cost | Accuracy |
|---|---|---|---|
| Rule-based | Fast | Free | Good |
| Transformer | Medium | Free | Better |
| API | Slow | Paid | Best |
Switch anytime: python3 cli.py notify --method transformer
Edit .env for your settings:
# Required
EMAIL_FROM=your@email.com
EMAIL_PASSWORD=your_app_password
# Optional
SCORING_METHOD=rule-based # rule-based, transformer, or api
MIN_SCORE_THRESHOLD=6.0 # Minimum score for "top" papers
UPDATE_FREQUENCY=24 # Hours between updates- Non-commercial use
- Proper attribution
- Respectful API usage
"Thank you to arXiv for use of its open access interoperability."
- Email not working? Check if you're using App Password (not regular password)
- No papers found? Try:
python3 cli.py papersto see what's available - Want better scores? Try:
python3 cli.py notify --method transformer
Made for researchers. Star if this helps you stay updated with research.