Flask (programming)

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Flask
Flask logo.svg
Developer(s) Armin Ronacher
Initial release April 1, 2010 (2010-04-01)
Stable release 0.9 / July 1, 2012 (2012-07-01)[1]
Written in Python
Operating system Cross-platform
Type Web application framework
License BSD
Website flask.pocoo.org

Flask is a lightweight web application framework written in Python and based on the Werkzeug WSGI toolkit and Jinja2 template engine. It is BSD licensed.

Flask is called a microframework because it keeps the core simple but extensible. There is no database abstraction layer, form validation, or any other components where third-party libraries already exist to provide common functionality. However, Flask supports extensions, which can add such functionality into an application as if it was implemented in Flask itself. There are extensions for object-relational mappers, form validation, upload handling, various open authentication technologies, and more.

Contents

History [edit]

Flask was created by Armin Ronacher. "It came out of an April Fool's joke but proved popular enough to make into a serious application in its own right.".[2][3]

Flask is inspired by Sinatra.[citation needed]

Features [edit]

  • Contains development server and debugger
  • Integrated support for unit testing
  • RESTful request dispatching
  • Uses Jinja2 templating
  • Support for secure cookies (client side sessions)
  • 100% WSGI 1.0 compliant
  • Unicode-based
  • Extensive documentation
  • Google App Engine Compatibility
  • Extensions available to enhance features desired.

Example [edit]

Following code shows a simple web application that prints "Hello World!":

from flask import Flask
app = Flask(__name__)
 
@app.route("/")
def hello():
    return "Hello World!"
 
if __name__ == "__main__":
    app.run()

Web applications built on Flask [edit]

See also [edit]

External links [edit]

References [edit]

  1. ^ http://flask.pocoo.org/docs/changelog/#version-0-9
  2. ^ Ronacher, Armin. "Opening the Flask". Retrieved September 30, 2011. 
  3. ^ "Denied: the next generation python micro-web-framework (April Fools page)". Retrieved September 30, 2011. 
  4. ^ "Armin Ronacher". Retrieved 23 January 2012.