Voila
의 장점
: 노트북에서 쉽게 효율적으로 프로토타입을 만들 수 있음.
단, 레이아웃잡기는 어려움- 다른 조직의 도움없이 빠르게 웹 서비스를 만드는 방법
- 데이터 분석가가 웹 서비스를 작업하는 FLOW
Streamlit
의 대안
1) R의Shiny
2)Flask
,FastAPI
: 백엔드 직접 구성 + 프론트엔드작업
3)Dash
: 제일 기능이 풍부한 Python 대시보드 라이브러리
4)Voila
Streamlit
의 장점
1) 파이썬 스크립트 코드를 조금만 수정하면 웹을 띄울 수 있음
2) 백엔드 개발이나 HTTP 요청을 구현하지 않아도 됨
3) 다양한 Component를 제공해 대시보드 UI 구성 가능
4) Streamlit Cloud도 존재해 쉽게 배포가능
5) 화면 녹화 기능 -> github readme에 추가가능- Streamlit Gallery : https://streamlit.io/gallery
- Widgets
:voila
처럼 다양한widget API
를 제공
: https://docs.streamlit.io/library/api-reference
: https://share.streamlit.io/daniellewisdl/streamlit-cheat-sheet/app.py
- 전체
Streamlit
코드가 다시 실행되는 경우
1) code가 수정되는 경우
2) 사용자가widget
과 상호작용하는 경우
: 코드가 다시 실행되어 변수가 초기화되는 것을 막기위해st.session_state
를 사용
: 캐싱하면 좋은 데이터들은@st.cache
데코레이터를 사용해 캐싱 메모리에 저장해둘 수 있음
streamlit run $파일이름 --server.port $할당받은포트번호