Streamlit 가이드

코드 없이 웹 앱을 만드는 가장 빠른 방법


Streamlit이 뭔가요?

Python 코드 몇 줄로 브라우저에서 실행되는 웹 앱을 만드는 도구입니다.

보통 웹 앱을 만들려면 HTML, CSS, JavaScript를 따로 배워야 합니다.
Streamlit은 그 과정을 전부 생략합니다.

일반 웹 개발:   Python 로직 + HTML + CSS + JavaScript + 서버 설정 ...
Streamlit:      Python 파일 하나 → streamlit run app.py → 끝

바이브코딩에서 Streamlit을 쓰는 이유

1. AI가 만들기 가장 쉬운 구조

Streamlit 앱은 파일 하나로 끝납니다.
프론트엔드와 백엔드가 분리되어 있지 않아서, AI에게 “이런 앱 만들어줘”라고 하면 app.py 파일 하나가 나옵니다.

AI에게 요청:  "CSV 업로드하면 그래프 그려주는 앱 만들어줘"
결과물:       app.py 파일 하나
실행:         streamlit run app.py

반면 React + FastAPI 구조는 파일이 수십 개로 나뉘어서 AI가 만들어줘도 연결하다가 막힙니다.

2. 결과를 즉시 눈으로 확인

코드를 저장하면 브라우저가 자동으로 새로고침됩니다.
“이렇게 바꿔줘” → 저장 → 결과 확인의 루프가 수초 안에 돌아갑니다.

3. 데이터 시각화가 기본 내장

pandas DataFrame, plotly 차트, 이미지, 테이블이 한 줄로 화면에 표시됩니다.
엑셀로 하나씩 열어보던 작업을 업로드 하나로 대체할 수 있습니다.

# 이 한 줄이 브라우저에 인터랙티브 차트를 그립니다
st.plotly_chart(fig)

4. 동료와 공유가 쉬움

완성된 앱을 동료에게 전달하는 방법:

  • CLI 스크립트: 파이썬 환경 설치, 터미널 사용법 설명 필요
  • Streamlit 앱: streamlit run app.py 한 줄, 또는 URL 하나

Streamlit이 적합한 상황 vs 아닌 상황

적합한 상황 적합하지 않은 상황
데이터 업로드 → 처리 → 결과 확인 불특정 다수에게 공개하는 서비스
팀 내부 도구 (5~20명) 로그인/권한 관리가 복잡한 경우
CSV, Excel, 이미지 처리 앱 실시간 다중 사용자 협업
LLM 연동 분석 도구 모바일 앱
빠른 프로토타입 대규모 트래픽 서비스

💡 연구원 대부분의 업무 자동화 도구는 Streamlit으로 충분합니다.


CLI와 비교하면

Week 2에서 CLI로 만든 워터마크 스크립트를 기억하시나요?

  CLI 방식 Streamlit 방식
실행 방법 터미널 명령어 브라우저 버튼
결과 확인 터미널 텍스트 화면에 이미지/표로 표시
동료 공유 스크립트 파일 전달 + 설명 URL 하나
파라미터 변경 코드 수정 또는 인자 변경 입력창에 타이핑
대량 자동화 (1000개+) ✅ 유리 ❌ 불리
비개발자 사용 ❌ 어려움 ✅ 쉬움

CLI가 더 나은 경우: 스케줄러로 자동 실행, 대량 배치 처리
Streamlit이 더 나은 경우: 동료와 협업, 결과를 바로 보고 싶을 때


실행 한 줄

streamlit run app.py

브라우저가 자동으로 열립니다 (http://localhost:8501).
코드를 수정하고 저장하면 브라우저에 바로 반영됩니다.


다음 단계

Week 3 실습 — Streamlit으로 앱 만들기