This project allows users to search for research papers using the CrossRef API and save their favourite documents to a local backend server. It features lazy loading of images, custom notifications, and blur effects during various operations. The backend server is built with Node.js, and users can interact with the saved papers in their profile.
- Search research papers using the CrossRef API
- Save selected papers to a backend server
- View, update, and remove saved research papers
- Lazy loading for images
- Custom blur effects during loading operations
- Notification system for various actions
- Getting Started
- Prerequisites
- Installation
- Running the Application
- File Structure
- API Endpoints
- Usage
These instructions will help you set up the project locally for development and testing.
- Node.js installed on your local machine. You can download it from here.
- Basic knowledge of JavaScript, HTML, and CSS.
- CrossRef API Key (not required but recommended for higher API limits).
- Clone the repository:
git clone https://github.com/Sounak990/Research-Paper-Search-Save-Application
- Install dependencies for the backend server:
cd backend npm install
- Start the backend server:
node server.js
- Backend: Ensure the backend server is running by executing the command from the backend folder:
Frontend: Open the
node server.js
index.html
file in a browser to load the frontend part of the application. You can also serve the files using a local web server (e.g., Live Server extension for Visual Studio Code or any preferred method).
- Enter the search query in the input field.
- Click the "Search" button.
- Results will be displayed below with information about the papers, including title, authors, publication year, and citation count.
- After searching, click "Save" to save research papers to the backend.
- A custom notification will appear confirming that the paper has been saved.
- Go to the "Saved Papers" section.
- All saved papers will be displayed with their respective details.
- You can remove any paper by clicking "Remove."
- POST /api/papers/save - Save a research paper to the backend.
- GET /api/papers/saved - Fetch all saved research papers.
- DELETE /api/papers/delete/:id - Remove a saved paper by its ID.
- Search for Research Papers: Enter the search query, click "Search," and view results.
- Save a Paper: Click "Save" next to a paper and receive a notification.
- View Saved Papers: Check the "Saved Papers" section and manage saved papers.
Custom notifications appear when saving and removing papers to enhance user interaction.