Streamlit의 pages/ 폴더를 활용해서 멀티 페이지 앱을 폴더 기반으로 구성
✅ 기본 구조 예시

🎨 사이드바에 폴더 이름 표시 예시
pages/분석/매출분석.py → 사이드바에 자동으로 분석/매출분석으로 뜹니다.
그렇기 때문에 폴더명을 기능별로 잘 나눠놓으면 깔끔하게 정리돼요.
1. 공통 코드 따로 관리하기 (utils/)
# utils/db.py
def get_data():
return {"key": "value"}
# pages/분석/매출분석.py
import streamlit as st
from utils.db import get_data
data = get_data()
st.write("데이터:", data)
반복되는 DB 연결, 그래프 함수 등은 utils/ 폴더에 모아두면 유지보수 GOOD 👍
2. 사이드바 커스터마이징 (선택적으로)
# 각 페이지 맨 위에
import streamlit as st
st.set_page_config(
page_title="매출 분석",
page_icon="📈",
layout="wide"
)
st.sidebar.title("분석 도구")
3. 기본 홈 파일은 루트에 Home.py로!
Streamlit은 Home.py를 자동으로 첫 번째 페이지로 보여줘요.
홈 화면 또는 대시보드 용도로 활용하면 자연스러워요.
🧠 정리
- pages/ 폴더에 서브폴더를 만들면 트리구조가 사이드바에 자동 반영됨
- 공통 함수, 데이터 등은 utils/, data/ 폴더로 분리하면 구조가 깔끔해짐
- set_page_config()로 각 페이지별 설정 가능 (타이틀, 아이콘 등)
'streamlit' 카테고리의 다른 글
| button 메소드 success 메소드 (0) | 2025.04.20 |
|---|