PaperPilot is an innovative research paper recommendation system that leverages artificial intelligence to provide personalized recommendations to researchers and scholars. With its powerful algorithms and integration of email services, PaperPilot aims to streamline the process of discovering relevant research papers and keeping users updated with the latest findings in their field.
-
Advanced Recommendation Algorithms: PaperPilot employs a combination of TF-IDF and KNN-like algorithms to cluster research papers based on their content and similarity. This ensures accurate and tailored recommendations to suit each user's interests.
-
Custom Dataset: PaperPilot's dataset is meticulously curated by scraping research papers from the IEEE website. This guarantees a vast collection of high-quality academic papers across various domains.
-
User-Friendly Front End: The front end of PaperPilot is built using React, providing a seamless and intuitive user experience. The integration of Google Authentication ensures secure access to the platform. Web-app is completely responsive and can be used for any type of screen.
-
AWS Simple Email Services: PaperPilot leverages the power of AWS SES to deliver periodic research paper recommendations directly to users' email inboxes. This ensures that users stay informed about the latest developments in their field without any hassle.
-
Express.js and Flask Integration: PaperPilot is powered by Express.js on the backend, providing a robust and scalable infrastructure for efficient data processing and recommendation generation. Flask, a Python web framework, is also utilized to handle specific functionalities seamlessly.
- Increase dataset size by including papers from additional reputable sources.
- Add flexibility for users to customize email frequency from the dashboard.
- Explore advanced machine learning models like LSTMs and Transformers.
- Enhance user experience through improved UI/UX, search functionality, and customization options.
- Fine-tune recommendation algorithms based on user feedback and evaluation.
- Implement paper rating and feedback system for users.
- Introduce collaboration and social features like sharing papers and discussion forums.
https://paperpilot-production.up.railway.app
PS: use /api as prefix to endpoints
-
Client
Install dependencies
$ npm install
Start the server
$ npm run build $ npm run preview
-
Server
Install Dependencies
$ cd Backend $ yarn
Start the server
$ yarn build $ yarn start
If you've downloaded the project as a zip file, follow these steps to set it up on your local machine:
-
Extract the downloaded zip file to a folder of your choice.
-
Open a terminal or command prompt and navigate to the project directory.
-
Client Setup:
-
Change to the
client
directory:cd client
-
Install the client dependencies:
npm install
-
Start the client server:
npm run build npm run preview
-
-
Server Setup:
-
Change to the
Backend
directory:cd Backend
-
Install the server dependencies:
yarn
-
Start the server:
yarn build yarn start
-
-
Once both the client and server are running, you can access the Paper-Pilot web app by opening your browser and navigating to
http://localhost:3000
.
Please note that these instructions assume you have Node.js, npm, and yarn installed on your machine. If you don't have them installed, make sure to install them before following the above steps.
Additionally, ensure that all the dependencies are successfully installed and there are no errors during the setup process.
That's it! You should now have the Paper-Pilot project up and running locally on your machine.
Feel free to modify the instructions as per your project structure or any specific requirements.
We value keeping this site open source, but as you all know, plagiarism is bad. We spent a non-negligible amount of effort developing, designing, and trying to perfect this iteration of our website, and we are proud of it! All we ask is to not claim this effort as your own.So, feel free to fork this repo. If you do, please just give us proper credit.Refer to this handy file Contributing.md if you're not sure what to do we would. Thanks!