The inspiration for the web app was to create something to save valuable time in the learning process. We wanted to cut reading time with the goal of spending more time understanding/applying knowledge.
What it does
The core functionality of the web app takes user input from a home page and passes it into a python script that chooses the most important sentences. These sentences are then outputted back into the original page.
Text summarization is done using the extractive method, which outputs already existing sentences instead of creating knew ones. The script works using NLTK (Natural Language Toolkit) and weighs individual sentences based on the frequency of individual words within each sentence.
How we built it
We built the web app using python in the Django framework for the backend.
The front-end code for the project was completed using Django-models, CSS, HTML, Bootstrap and Materialize CSS.
Challenges we ran into
This was our first full-stack project. We had some difficulties learning how to navigate Django at first. Another issue that we ran into was figuring out how to get user input from the frontend into our backend code and then back to the user.
Accomplishments that we proud of
Most planned functionalities were completed.
What we learned
Improved Python skills as well as learning how to use Django. Learned more about Django models. Improved HTML and CSS skills as well as learning how to use and implement Bootstrap.
What's next for Text Summarizer Webapp
A couple things:
- More website functionalities (implementing links)
- Improve the python script (currently the summarization is heavily biased towards longer sentences). In the future, possibly add a script that divides the weighted scores of each sentence by the number of words within the sentence.