Live demo: https://jonstraveladventures.github.io/paper-search-interface/
A web-based tool for searching and analyzing academic papers from major conferences and journals across AI/ML/datascience related subfields. This tool processes paper metadata from Paper Copilot to provide advanced search and filtering capabilities.
Author: Jonathan Shock - University of Cape Town
This repository includes both the search interface and the paper data for immediate use.
- Data Source: All paper metadata originates from Paper Copilot
- Usage Rights: Users must comply with Paper Copilot's Terms and Conditions
- Data Processing: This tool processes data for personal, non-commercial use only
- Advanced Search: Search by title, author, conference, year, and more
- Geographic Filtering: Filter by countries and continents
- Venue Organization: Browse conferences organized by research subfield
- Status Tracking: View paper acceptance status with color coding
- CSV Export: Export search results to CSV format
- Bulk Selection: Select all countries, African countries, or venues with one click
- Map View: Toggle a world map above results to visualize per‑country paper counts, scoped to current filters. Download the rendered map as PNG.
The tool supports papers from major conferences and journals across these research subfields:
- Artificial Intelligence: AAAI, ICML, ICLR, NeurIPS, IJCAI, AISTATS, CORL, ACML
- Computational Linguistics: ACL, EMNLP, NAACL, COLING, COLM
- Computer Vision & Pattern Recognition: CVPR, ICCV, ECCV, WACV
- Computer Graphics: SIGGRAPH, SIGGRAPH Asia
- Robotics: ICRA, IROS, RSS
- Data Mining & Analysis: KDD
- Databases & Information Systems: WWW
- Multimedia: ACMMM
- Computer Networks: SITCOM
- And more...
- Python 3.8 or higher
-
Clone the repository:
git clone https://github.com/jonstraveladventures/paper-search-interface.git cd paper-search-interface -
Set up the environment:
# On Unix/Linux/macOS: chmod +x install.sh ./install.sh # On Windows: install.bat
-
Start the web interface:
python run.py
-
Open your browser and go to
http://localhost:5001
You can host a static version (no backend required) directly on GitHub Pages:
- A static site is in
docs/and loadsdocs/data.jsonclient-side. - The build script
tools/build_static.pygeneratesdocs/data.jsonfromall_papers.csv. - A workflow at
.github/workflows/deploy-pages.ymlbuilds and publishesdocs/to Pages.
Steps:
- Push to
main. The workflow will run and deploy. - In GitHub repository settings → Pages, set Source to “GitHub Actions”.
- Your site will be available at the repository Pages URL.
Note: docs/data.json is large (~60 MB). Pages will serve it, but initial load can be slow. If needed, consider:
- Splitting by year into multiple JSON files
- Lazy-loading by selected years/conferences
- Hosting the JSON on an external CDN
- Enter keywords in the title search box
- Type author names in the author search box
- Use the year range sliders to filter by publication year
- Countries: Select specific countries or entire continents
- Venues: Choose conferences organized by research subfield
- Bulk Selection: Use buttons to select all countries, African countries, or venues
- Click the "📥 Export to CSV" button to download search results
- The exported file includes all paper metadata
This tool includes data from Paper Copilot. Please ensure you comply with their Terms and Conditions when using this tool.
- The inline map is a choropleth built with D3 and world-atlas TopoJSON.
- A separate cartogram prototype was explored using Max Roser’s world population cartogram data via mattdzugan/World-Population-Cartogram (not required for the main interface).
paper-search-interface/
├── tools/
│ ├── web_interface.py # Flask web application
│ ├── combine_papers.py # Data processing script
│ ├── find_name_papers.py # Author search utility
│ └── templates/
│ └── index.html # Web interface template
├── run.py # Application launcher
├── requirements.txt # Python dependencies
├── install.sh # Unix/Linux/macOS setup script
├── install.bat # Windows setup script
├── all_papers.csv # Combined paper data
├── [conference/journal folders]/ # Individual conference and journal data
└── README.md # This file
GET /- Main search interfaceGET /search- Search API (returns JSON)GET /export_csv- Export search results to CSV
# Create virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
# Run in development mode
cd tools && python web_interface.py- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
This project is licensed under the MIT License - see the LICENSE file for details.
- Data Source: Paper Copilot - The original source of all paper metadata
- Built with: Flask, Pandas, HTML/CSS/JavaScript
- This repo was built using Cursor.
This tool is provided for educational and research purposes. Users are responsible for ensuring they have proper rights to use any data processed by this tool. The developers are not responsible for any misuse of data or violation of third-party terms of service.
For questions about this tool, please open an issue on GitHub or contact the author directly.
Author Contact: [email protected]
For questions about data usage rights, please contact Paper Copilot.

