News Summary in Shorts: A One-Page Project Overview
Project Introduction The News Summary in Shorts application is designed to efficiently
summarize news articles. By inputting a URL and selecting a desired word count, the application
scrapes the article's content, processes it, and generates a concise summary. This is achieved by
tokenizing the text, removing stop words and punctuations, and ranking sentences based on their
word frequencies.
Problem Statement The core objective is to provide users with a summarized version of a news
article from a given URL, adhering to the specified word count.
Approach
1. Data Collection: Using BeautifulSoup, the application extracts text from the given news
URL.
2. Data Processing: The text is cleaned by removing stop words and punctuation using Spacy.
The frequency of each word is then calculated and normalized.
3. Sentence Scoring: Sentences are scored based on word frequencies, and the highest-scoring
sentences are selected to form the summary.
Design Thinking
• Empathy: Recognizes the user's need for quick and informative news summaries.
• Define: Focuses on accurately ranking sentences for summarization.
• Ideate: Considers various solutions, both with and without AI.
• Prototype and Test: Develops and tests prototypes, iterating based on feedback.
Implementation
1. Libraries Used: BeautifulSoup, requests, pandas, and Spacy.
2. Process:
• Extracts paragraphs from the URL.
• Removes HTML tags and cleans the text.
• Tokenizes words and removes stop words.
• Calculates word frequencies and normalizes them.
• Scores sentences and selects the best ones for the summary.
3. Frontend Development: Built using Streamlit and ReactJS.
4. Backend Development: Utilizes FastAPI for handling requests and processing data.
5. Deployment: Docker is used to create containerized applications, ensuring easy deployment
and scalability.
Final Results The project is successfully deployed using Docker, with a functional frontend and
back-end. The application effectively generates news summaries based on user inputs.
Conclusion This project provided valuable insights into developing a full-stack application, from
back-end to frontend, and deploying it using Docker. Key learnings include the importance of
modular development, the role of version control with GitHub, and the benefits of containerization
for deployment.