Project Overview
ResearchRec is a full-stack platform designed to help researchers discover relevant scientific articles. It combines content analysis, user interactions and recommendation models to provide personalized suggestions while also highlighting globally trending publications.
The Problem
Researchers must navigate a constantly growing volume of scientific literature. Traditional keyword search can retrieve relevant documents, but it does not continuously adapt to each user's interests or address the cold-start problem for new users with limited interaction history.
The Solution
ResearchRec uses a hybrid recommendation workflow that combines article metadata, user preferences, behavioral signals and overall article popularity. The platform collects feedback from user interactions and uses it to refine future recommendations.
The recommendation process includes:
- Content-based features extracted from article abstracts and tags
- Neural Collaborative Filtering to model user-article interactions
- Active Learning to prioritize informative feedback
- A hybrid scoring mechanism balancing personalization and popularity
- Feedback loops that allow recommendations to evolve with user interests
Core Capabilities
Personalized Recommendations
Users receive article suggestions based on their interests and previous interactions with the platform.
Cold-Start Support
Content features and global trends provide useful recommendations before enough behavioral data is available for collaborative filtering.
Trending Research
The platform surfaces popular articles and allows users to explore current research activity beyond their personalized feed.
User Feedback
Interactions provide signals that can be incorporated into later recommendation cycles, helping the system adapt over time.
Technical Architecture
The application separates the product interface, business logic and machine learning workflow into dedicated services.
- Next.js provides the responsive user interface
- NestJS exposes the application API and coordinates business logic
- Flask serves the recommendation workflow as a dedicated AI service
- MongoDB stores users, articles, preferences and interaction data
- TensorFlow supports the recommendation models
Machine Learning Workflow
Article abstracts and tags are preprocessed to create content representations using TF-IDF and embedding-based features. Neural Collaborative Filtering models relationships between users and articles. Active Learning identifies uncertain or informative examples where additional feedback can improve the recommendation process.
This modular architecture keeps model experimentation separate from the main application while allowing the product to consume recommendation results through a clear service interface.
Engineering Considerations
- Separation between the web application and machine learning service
- Support for both new and returning users
- Storage of explicit and implicit interaction signals
- Extensible recommendation pipeline for future model experiments
- Responsive interfaces for article discovery, details and user spaces
Technology Stack
- Next.js
- NestJS
- Flask
- MongoDB
- TensorFlow
- TF-IDF and text embeddings
