For our project, we're going to use one of the most popular web frameworks you can find in the Python ecosystem: Django.
A web framework is a set of tools (libraries, functions, classes, and so on) that we can use to code a website. We need to decide what kind of requests we want to allow to be issued against our web server and how we respond to them. A web framework is the perfect tool for doing that because it takes care of many things for us so that we can concentrate only on the important bits without having to reinvent the wheel.
There are different types of frameworks. Not all of them are designed for writing code for the web. In general, a framework is a tool that provides functionalities to facilitate the development of software applications, products, and solutions.