Flask is a micro web framework written in Python. It is based on Werkzeug WSGI toolkit and Jinja2 template engine. Flask implements the Model-View-Controller (MVC) architectural pattern. All Flask applications must create an application instance by instantiating the Flask class, which acts as a central dispatcher for requests. Flask uses routes defined with the @app.route decorator to map URLs to view functions that generate responses. Templates are rendered with the Jinja2 templating language by passing context variables. Static files are served from the /static route.