Code Explainers

Flask code explainers

python
from flask import Blueprint, render_template, redirect, url_for, session, request
from wtforms import Form, StringField, SelectField, IntegerField
from wtforms.validators import DataRequired, Email, NumberRange
 

A multi-step signup wizard in Flask

blueprints session-state form-validation
Intermediate 10 steps
python
from flask import Flask, request, g, jsonify
from flask_babel import Babel, gettext as _, format_datetime
from datetime import datetime
 

Per-request localization in Flask with Babel

i18n content-negotiation request-lifecycle
Intermediate 8 steps
python
import time
import threading
from flask import Flask, request, jsonify, g
 

A token-bucket rate limiter in Flask

rate-limiting token-bucket middleware
Intermediate 7 steps
python
from functools import wraps
 
from flask import Blueprint, abort, jsonify
from flask_login import current_user, login_required

Building an admin-only decorator in Flask

decorators authorization access-control
Intermediate 7 steps
python
from flask import Blueprint, jsonify
from sqlalchemy import text
from sqlalchemy.exc import SQLAlchemyError
 

Building a health check endpoint in Flask

health-check blueprint error-handling
Intermediate 6 steps
python
from datetime import timedelta
 
from flask import Blueprint, current_app, make_response, redirect, request, url_for
from itsdangerous import URLSafeTimedSerializer, BadSignature, SignatureExpired

How signed remember-me cookies work in Flask

authentication signed-cookies session-management
Intermediate 8 steps
python
import click
from flask.cli import AppGroup
 
from . import db

Custom user CLI commands in Flask

cli click command-group
Intermediate 7 steps
python
from flask import Blueprint, render_template, jsonify, request, abort
 
from .models import Article
 

Content negotiation in a Flask Blueprint

content-negotiation http-headers routing
Intermediate 7 steps
python
from werkzeug.routing import BaseConverter, ValidationError
from flask import Flask, jsonify, abort
 
 

Custom URL converters in Flask

url-routing validation converters
Intermediate 6 steps
python
from flask import Blueprint, jsonify
from marshmallow import Schema, fields, validate, EXCLUDE
from webargs.flaskparser import use_args
 

Validating query params in Flask with webargs

validation schema query-building
Intermediate 10 steps
python
import json
import time
import queue
 

Server-Sent Events streaming in Flask

server-sent-events streaming pub-sub
Advanced 9 steps
python
from flask import Blueprint, request, jsonify
from marshmallow import Schema, fields, validate, ValidationError, EXCLUDE
 
from .models import db, User

How a Flask blueprint validates and creates users

validation rest-api schema
Intermediate 8 steps
python
import random
 
import click
from faker import Faker

Building a Flask seed command with Click

cli database seeding orm
Intermediate 7 steps
python
import smtplib
from email.message import EmailMessage
from threading import Thread
 

Sending welcome emails off the request thread in Flask

background-threads app-context email
Intermediate 8 steps
python
from flask import Blueprint, request, url_for, jsonify, abort
from flask.views import MethodView
 
from .models import Article, db

Building a paginated JSON API with Flask MethodView

rest-api pagination class-based-views
Intermediate 10 steps
python
from flask import Blueprint, render_template, request, redirect, url_for, flash
from werkzeug.security import check_password_hash
 
from .models import User, db

A change-email route in Flask

blueprints form-validation password-hashing
Intermediate 8 steps
python
import hashlib
import os
from datetime import timedelta
 

Serving cacheable static assets in Flask

http-caching etag conditional-requests
Intermediate 8 steps
python
from flask import Blueprint, jsonify, request, abort
 
v1 = Blueprint("users_v1", __name__)
v2 = Blueprint("users_v2", __name__)

Versioning a Flask API with Blueprints

api versioning blueprints rest
Intermediate 7 steps