This project is a web-based application that allows users to upload research papers in PDF format, which are then summarized using Natural Language Processing (NLP) techniques. The summarized content can be downloaded by the user in either DOCX or PDF format.
- Upload a PDF research paper.
- Automatically generate a summary of the paper.
- Download the summarized paper in either DOCX or PDF format.
- Easy-to-use interface with modern design.
- Flask: Python web framework used for building the web application.
- python-docx: Python library to handle DOCX files.
- pdfkit: Library to convert HTML to PDF.
- NLTK: Natural Language Toolkit, used for text processing and summarization.
- HTML/CSS: For front-end user interface.
project-directory/
│
├── app.py # Flask app code (main backend logic)
├── requirements.txt # Python dependencies
├── templates/ # HTML templates for pages
│ ├── upload.html # Upload form for the paper
│ └── summary.html # Display summarized paper
├── static/ # Static files (CSS, images)
│ ├── css/
│ │ └── styles.css # Custom CSS for styling the pages
│ └── images/ # Images (e.g., logos, icons)
└── venv/ # Virtual environment folder (if created)
- app.py: Main Python file running the Flask application, handling routing, file uploads, summarization, and file downloads.
- requirements.txt: Contains all the required Python libraries and dependencies for the project.
- templates/upload.html: HTML file for uploading a research paper.
- templates/summary.html: HTML file displaying the summarized content with download options.
- static/css/styles.css: Custom CSS file used to style the pages and make the UI more professional.
- static/images/: Folder to store any images (e.g., logos, icons) used in the user interface.
Follow these steps to run the project locally:
git clone <repository-url>
cd project-directory
Windows:
python -m venv venv
venv\Scripts\activate
Mac/Linux:
python3 -m venv venv
source venv/bin/activate
Run the following command to install the necessary Python dependencies:
pip install -r requirements.txt
Now that the dependencies are installed, you can start the Flask application:
python app.py
By default, the app will run on http://127.0.0.1:5000/
. Open this URL in your web browser to access the Research Paper Summarizer app.
- Navigate to the upload page (
/upload
) and upload your research paper. - After the file is uploaded, the app will process it and provide a summarized version of the paper.
- You can then download the summary in either DOCX or PDF format.
You can upload another file, or simply exit the application after receiving the summary.
- static/images: Store any images (like logos, icons) used in the UI here.
- static/css/styles.css: Custom CSS file for designing and styling the front-end pages.
- templates: Contains the HTML files for the user interface (
upload.html
for file upload andsummary.html
for displaying the summary).
- Uploading a Paper: On the home page, users can select a file from their local system and click "Summarize Paper."
- Viewing the Summary: After the summary is generated, it will be displayed on the next page, where users can download the summary in DOCX or PDF format.
- Exiting or Uploading Another Paper: The user can either exit the app or upload another paper for summarization.
- The summarization process may take a few seconds depending on the length of the document.
- Ensure that the file uploaded is in PDF format for best results.
- Add support for additional document formats (e.g., DOCX).
- Improve the summary generation algorithm by integrating advanced NLP models.
- Provide options for customizing the summary (e.g., length of the summary).