Pragmatic Flask for developers

Pragmatic web development tutorial for Python 3 Flask micro-framework.

Why

If you want to do web development in Python, chances are you start with Django. Flask is the most beloved alternative:

  • minimal
  • a simple yet powerful and stable core
  • many many many plugins

What is the main problem you get caught some weeks after you fell in love with Flask? That plugins you need to use for your project are at least nine or ten, and there are no instructions about the most important to choose and how to mix them right.

What happens next is that:

  • You have to find them (google, stackoverflow, comparing, opinions, suggestions, etc.)
  • You have to learn them (go through each single documentation)
  • You have to make all of them work together

Main goals

  1. Provide a set of instructions to explain only the basic concepts of Flask core
  2. List the plugins needed
  3. Explain plugins in the order they will be needed
  4. Provide a final boilerplate

Note: Flask may be used in many ways:

  • as a standalone server coupled with relational DB
  • as REST API provider
  • as an interface plus Javascript (e.g. Angularjs) and REST API backend
  • ...many more

The idea is to provide the boilerplate for at least the first three solutions.