Tutorial Series

How To Build Web Applications with Flask

Default avatar
By Abdelhadi Dyouri
Developer and author at DigitalOcean.
How To Build Web Applications with Flask

Introduction

Flask banner image

Flask is a lightweight Python web framework that provides useful tools and features for creating web applications in the Python Language. It gives developers flexibility and is an accessible framework for new developers because you can build a web application quickly using only a single Python file. Flask is also extensible and doesn’t force a particular directory structure or require complicated boilerplate code before getting started. Learning Flask will allow you to quickly create web applications in Python. You can take advantage of Python libraries to add advanced features to your web application, like storing your data in a database, or validating web forms.

Summary View
detailed View

Series Tutorials

Tutorial

In this tutorial, you’ll build a small web application that renders HTML text on the browser. You’ll install Flask, write and run a Flask application, and run the application in development mode. You’ll use routing to display various web pages that serve different purposes in your web application. You’ll also use view functions to allow users to interact with the application through dynamic routes. Finally, you’ll use the debugger to troubleshoot errors.

Tutorial

How To Use Templates in a Flask Application

Published on September 13, 2021

In Flask, you can use the Jinja templating language to render HTML templates. A template is a file that can contain both fixed and dynamic content. In this tutorial, you’ll build a small web application that renders several HTML files. You’ll use variables to pass data from the server to the templates. Template inheritance will help you avoid repetition. You’ll use logic in templates such as conditionals and loops, use filters to modify text, and use the Bootstrap toolkit to style your application.

Tutorial

How To Handle Errors in a Flask Application

Published on October 12, 2021

When you’re developing a web application, you will inevitably run into situations where your application behaves in a way contrary to what you expected. In this tutorial, you’ll build a small web application that demonstrates how to handle common errors one encounters when developing a web application. You’ll create custom error pages, use the Flask debugger to troubleshoot exceptions, and use logging to track events in your application.

Tutorial

How To Use Web Forms in a Flask Application

Published on November 5, 2021

Web forms, such as text fields and text areas, give users the ability to send data to your application to use it to perform an action, or to send larger areas of text to the application. In this tutorial, you’ll build a small web application that demonstrates how to use web forms. The application will have a page for displaying messages that are stored in a Python list, and a page for adding new messages. You’ll also use message flashing to inform users of an error when they submit invalid data.

Tutorial

WTForms is a Python library that provides flexible web form rendering. You can use it to render text fields, text areas, password fields, radio buttons, and others. WTForms also uses a CSRF token to provide protection from CSRF attacks. In this tutorial, you’ll build a small web application that demonstrates how to render and validate web forms using Flask-WTF.

Tutorial

In web applications, you usually need a database, which is an organized collection of data. SQLite is a simple and fast open source SQL engine that can be used with Python to store and manipulate application data. SQLite works well with Python because the Python standard library provides the sqlite3 module, which you can use to interact with any SQLite database. In this tutorial, you’ll build a small web application that demonstrates how to use SQLite with Flask.

Tutorial

In web applications, you usually need a database, which is an organized collection of data. You use a database to store and maintain persistent data that can be retrieved and manipulated efficiently. PostgreSQL, or Postgres, is a relational database management system that provides an implementation of the SQL querying language. In this tutorial, you’ll build a small book review web application that demonstrates how to use the psycopg2 library, a PostgreSQL database adapter.

Tutorial

How To Use MongoDB in a Flask Application

Published on February 14, 2022

In web applications, you usually need a database to store and maintain persistent data. Flask is a lightweight Python web framework that provides useful tools and features for creating web applications in the Python Language. MongoDB is a general-purpose, document-oriented, NoSQL database program that uses JSON-like documents to store data. In this tutorial, you’ll build a small todo list web application that demonstrates how to use the PyMongo library, a MongoDB database driver.

Tutorial

In web applications, you usually need a database, which is an organized collection of data. Flask is a lightweight Python web framework that provides useful tools and features for creating web applications in the Python Language. SQLAlchemy is an SQL toolkit that provides efficient and high-performing database access for relational databases. In this tutorial, you’ll build a small student management system that demonstrates how to use the Flask-SQLAlchemy extension.

Tutorial

In this tutorial, you’ll build a small blogging system that demonstrates how to build one-to-many relationships using the Flask-SQLAlchemy extension. You’ll have a relationship between posts and comments, where each blog post can have several comments.

Tutorial

In this tutorial, you’ll modify an application built using Flask and Flask-SQLAlchemy by adding a many-to-many relationship to it. You’ll have a relationship between posts and tags, where each blog post can have several tags, and each tag can have multiple posts tagged with it.

Tutorial

In this tutorial, you’ll use Flask and Flask-SQLAlchemy to create an employee management system with a database that has a table for employees. You’ll use the Flask shell to query a table, and get table records based on a column value. You’ll retrieve records on certain conditions. You’ll order the results by a column value, and count and limit query results. Finally, you’ll use pagination to display a certain number of records per page in a web application.

Tutorial

In this tutorial, you’ll use Flask blueprints to structure a web application with three components: the main blueprint containing the home page and other main routes, a posts blueprint for managing blog posts, and a questions blueprint for questions and answers.

Check out all our Tutorial Series

Try DigitalOcean for free

Click below to sign up and get $200 of credit to try our products over 60 days!

Sign up

Featured on Community

Get our biweekly newsletter

Sign up for Infrastructure as a Newsletter.

Hollie's Hub for Good

Working on improving health and education, reducing inequality, and spurring economic growth? We'd like to help.

Become a contributor

Get paid to write technical tutorials and select a tech-focused charity to receive a matching donation.

Welcome to the developer cloud

DigitalOcean makes it simple to launch in the cloud and scale up as you grow — whether you're running one virtual machine or ten thousand.

Learn more
Animation showing a Droplet being created in the DigitalOcean Cloud console