Dive into the world of the Flask micro-framework to develop an array of web applications
Key Features
Book Description
Flask is a small but powerful web development framework for Python. Though Flask is termed a micro-framework, it is no way lacking in functionality; there are many extensions available to Flask which helps it to function at the same level as other large frameworks such as Django and Ruby on Rails. This book will demonstrate how to develop a series of web application projects with the Python web micro-framework, and leverage extensions and external Python libraries and APIs to extend the development of a variety of larger and more complex web applications. The book will start by explaining Python’s Virtualenv library and how to create and switch between multiple virtual environments. You’ll first build an SQL database-backed application, which will use Flask-WTF, Flask-SQLAlchemy, Jinja templates, and other methods. Next you’ll move on to a timeline application, built using concepts including pytest-Flask, the Blinker package, data modelling for user timelines, exception handling, and creating and organizing CLI tools. Moving on, you’ll discover how to implement a photo timeline application where you’ll explore topics such as writing and running celery tasks, API error handling and testing, and Werkzeug middlewares. Finally, the book walks you through creating an application which fetches data from GitHub and stores it locally. You will also learn how to install and configure Flask-Click extension.
What you will learn
Use the virtualenv Python package to effectively isolate your development environments
Convert a simple onefile Flask application into a more fullfledged multipackage application
Integrate FlaskLogin for simple user authentication, FlaskWTF for forms, and FlaskSQLAlchemy for database interactions
Explore URL routing and dispatching in a blueprint structured application
Create your own signals and consume them within your application
Learn to leverage Werkzeug, the WSGI library that powers much of Flask
Implement custom exceptions for handling non20x response codes
Write your own CLI tools for administrative and development tasks of your Flask application using FlaskScript/Click
Build your Flask extensions to encapsulate reusable behaviors across your applications
Integrate your application with open source JavaScriptbased graphing libraries to create simple data visualizations
Who this book is for
If you are a Python web developer who has developed basic Flask applications and now wants to build a series of more complex web applications, then this is the book for you.
Table of Contents
Starting on the Right Food: Using Virtualenv
Small to Big: Growing the Flask Application Structure