Empowering researchers with intelligent recommendations for relevant research papers.
Xtract is a research paper recommendation system designed to assist students, researchers, and academicians in discovering relevant academic papers based on their interests, search queries, or reading history.
It leverages Natural Language Processing (NLP) and transformer-based embeddings to understand the semantic similarity between research papers — going beyond simple keyword matching to deliver context-aware recommendations.
- Semantic Recommendations: Finds research papers based on meaning, not just keywords.
- Powered by Transformer Models: Tested with both SciBERT and SBERT models for high-quality contextual embeddings.
- Interactive Frontend: Modern, responsive UI for searching and exploring papers.
- Deployed on Vercel: Seamless cloud hosting for easy access and scalability.
- Notebook Support: Jupyter notebooks for data preprocessing, embedding generation, and experiments.
- Modular Design: Separate modules for backend, frontend, and notebook experimentation.
Xtract-Recommendation_System
├── backend/ # Core backend logic
│ ├── xtract-api/
│ ├── requirements.txt # Python dependencies
│ └── (other backend modules)
│
├── xtract-notebook/ # Jupyter notebooks for data exploration & embeddings
│ ├── data_preprocessing.ipynb
│ ├── embedding_generation.ipynb
│ └── model_experiments.ipynb
│
├── xtract-ui/ # Frontend web interface
│ ├── src/ # Source code (React/TypeScript components)
│ ├── public/ # Static assets
│ └── package.json # UI dependencies
│
├── .gitignore # Ignored files and folders
└── README.md # Project documentation
Figure 1: Screenshot of the Xtract Recommendation System interface.
Figure 2: Screenshot of the Xtract Recommendation System Search Result.
- Node.js (v16+)
- Python (v3.8+)
- Git
Clone the repository:
git clone https://github.com/hirakjyoti08/Xtract-Recommendation_System.git
cd Xtract-Recommendation_SystemNavigate to the backend directory and install dependencies:
cd backend
npm install
npm startIn a new terminal window, start the API server:
cd xtract-api
npm install
npm run devStart the frontend interface:
cd xtract-ui
npm install
npm run dev- Start the backend, API server, and frontend
- Open the frontend application in the browser
- Enter research-related keywords or queries
- View recommended academic papers
- Node.js
- Express.js
- React / Next.js
- Python
- Jupyter Notebook
- Research paper discovery
- Academic assistance for students and researchers
- Experimentation with recommendation algorithms
- Prototype system for research-based recommendation engines
- Advanced ranking and personalization
- Integration with larger academic datasets
- NLP-based recommendation models
- User feedback-based learning
Contributions are welcome.
Please fork the repository, create a feature branch, and submit a pull request.
This project is licensed under the MIT License.
@hirakjyoti08 @uddiGitHub