Extensions in Flask explained and how to add them

In this tutorial, we are going to learn about various extensions available for implementing in your Flask webpage. We are also going to learn how to add them to our Flask framework and how they can help us in many ways.

Flask – Extensions

Many times you must have seen Flask been referred to as a micro-framework. It is mainly because its core functionalities include a templating engine based on Jinja2WSGI and routing based upon Werkzeug. On top of that Flask has support for cookies and sessions as well as some web helpers such as JSON, static files, etc.

Learn more:

But as all of you know that all these functionalities and features are not enough for developing a full-fledged web application. And this is where the extensions available in Flask come into usage. The flask extensions give a tremendous amount of extensibility to the Flask framework of Python.

However, you must know that there are a lot of extensions available for Flask, so choosing the right extension to implement in your webpage is very crucial.

Now a question might have raised in your mind, “What is a Flask extension?”

So, basically a flask extension is a type of Python module, which adds a specific type of functionality and support to the Flask framework. All the available extensions are stored in a directory known as Flask Extension Registry. And you can use pip to download a specific extension into your flask framework.

In the upcoming tutorials on Flask, we are going to learn about the following extensions in detail –

  • Flask Mail – provides an SMTP interface to our flask application
  • Flask WTF – provides validation and rendering of WTForms
  • Flask SQLAlchemy – adds support for SQLAlchemy
  • Flask Sijax – provides an interface for Sijax – Library of Python/JQuery that makes it easier for AJAX to use in web applications

There is generally extensive documentation provided by each type of extension for its better usage. Since every Flask extension is a Python module, we need to import it first before using it in Flask.

For installing any module,

pip install WTForms

And after installing an extension, you need to import it in your code by

from flask import WTForms

And then your extension will be ready to use on a webpage.


I hope you understood what was explained in this tutorial. If you have any doubts or queries regarding anything described here, please feel free to comment them down below.

Leave a Reply

Your email address will not be published. Required fields are marked *