Flask는 「최소한의 코어 + 필요한 만큼 확장」 철학의 파이썬 웹 프레임워크입니다.
Django가 풀스택이라면 Flask는 미니멀.
작은 API·프로토타입·학습용으로 매우 인기.
Hello World가 충격적으로 짧습니다.
from flask import Flask.
app = Flask(__name__).
@app.route("/") def hello(): return "Hello, World!".
flask --app app run.
이게 끝입니다.
5줄로 웹 서버가 동작합니다.
라우팅.
@app.route("/users/") — URL의 부분이 자동으로 함수 인자로.
methods=["POST"] — POST 요청만.
URL 파라미터·쿼리스트링·요청 본문 모두 request 객체로 접근.
응답.
return "문자열" — 200 OK + HTML.
return jsonify({"key": "value"}) — JSON 응답 + Content-Type 헤더.
return "...", 404 — 상태 코드 직접 지정.
return render_template("index.html", data=...) — 템플릿 렌더링.
확장.
인증은 Flask-Login, DB는 Flask-SQLAlchemy, 폼은 Flask-WTF, 마이그레이션은 Flask-Migrate.
핵심은 작게 유지하고, 필요한 기능을 골라 끼우는 방식.
큰 프로젝트로 가려면 Blueprint로 모듈 분리.
한 줄 요약
Flask는 최소한의 코어로 시작해 확장을 골라 쓰는 마이크로 프레임워크입니다.
5줄로 시작 가능하며, 작은 API·프로토타입·학습에 인기 많습니다.
더 알아볼 것
- Blueprint로 모듈 분리
- Flask vs Django 선택 기준
- Quart — Flask의 async 버전