開発元 | Armin Ronacher |
---|---|
初版 | 2010年4月1日 |
最新版 | |
リポジトリ | |
プログラミング 言語 | Python |
対応OS | Cross-platform |
種別 | ウェブアプリケーションフレームワーク |
ライセンス | BSDライセンス |
公式サイト |
palletsprojects |
Flask(フラスク)は、プログラミング言語Python用の、軽量なウェブアプリケーションフレームワークである。標準で提供する機能を最小限に保っているため、自身を「マイクロフレームワーク」と呼んでいる。Werkzeug WSGIツールキットとJinja2テンプレートエンジンを基に作られている。BSDライセンスで公開されている。
Flaskは、標準で提供する機能を最小限に保っているため、自身を「マイクロフレームワーク」と呼んでいる。Flask自身は、他のフレームワークがしばしば持っているような、データベース抽象化レイヤやフォーム値の検証などの機能を持たない。これは、どんなWebアプリケーションにも適合する良い基盤を作るための設計判断だとしている(例えば、テンプレートエンジンはほとんどのWebアプリケーションで有用だが、関係データベース等はすべてのアプリケーションが必要とするものではない)[2]。とはいえ、それらの機能を、あたかもFlaskが元からサポートしているかのように追加できる拡張性も備えている。現段階において、オブジェクトリレーショナルマッパや、フォーム値の検証、ファイルのアップロード、ユーザログイン、種々のオープンな認証技術をサポートする拡張などが第三者によって提供されている[3]。
FlaskはArmin Ronacherによって開発された。彼は『エイプリルフールのジョークとして作ったのだけれど、有名になって、いつのまにか本格的なアプリケーションになってしまった』[4][5]と述べている。
バージョン0.10で、Python 3に対応した[6]。
FlaskはPython愛好家の間で人気がある。2020年10月[update]、GitHub上のPythonのウェブ開発フレームワーク中でDjangoよりわずかに少ない2番目に多いスターを獲得しており[7]、JetBrainsのPython Developers Survey 2018、2019、2020では、最も人気が高いウェブフレームワークになった[8][9][10]。
現在以下のサンプルコードは、ルートパスにアクセスすると "Hello World!" を表示するだけのアプリケーションである。
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "Hello World"
if __name__ == "__main__":
app.run(debug=False)