From b27c2a1873a2ee2333668a965da827aa16ef844e Mon Sep 17 00:00:00 2001
From: th-kim0823
Date: Mon, 27 Apr 2026 20:03:15 +0900
Subject: [PATCH] =?UTF-8?q?feat:=20stage=20intro=20=E2=80=94=20=ED=8C=80?=
=?UTF-8?q?=ED=8E=B8=EC=84=B1=204=C3=972=20=EA=B7=B8=EB=A6=AC=EB=93=9C=20+?=
=?UTF-8?q?=20=EC=88=9C=EC=84=9C/=EC=8B=9C=EC=83=81=20=EB=B0=95=EC=8A=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app.py | 38 ++++++++++++++++++++++++++++++++++++--
1 file changed, 36 insertions(+), 2 deletions(-)
diff --git a/app.py b/app.py
index 4a8ca74..073533a 100644
--- a/app.py
+++ b/app.py
@@ -376,9 +376,43 @@ def render_show():
def render_stage_intro(data):
- st.markdown('π ν΄μ»€ν€
', unsafe_allow_html=True)
+ st.markdown('π MLOps ν΄μ»€ν€ 2026
', unsafe_allow_html=True)
st.markdown('ν νΈμ±
', unsafe_allow_html=True)
- st.info("Task 9μμ ꡬν")
+
+ people = data.get("people", [])
+ teams = {}
+ for p in people:
+ teams.setdefault(p["team"], []).append(p["name"])
+ team_names = sorted(teams.keys())
+
+ # 4Γ2 그리λ (7ν + 1 λΉ μΉΈ)
+ rows = [team_names[i:i + 4] for i in range(0, len(team_names), 4)]
+ for row in rows:
+ cols = st.columns(4)
+ for col, team in zip(cols, row):
+ members = teams[team]
+ members_html = "
".join(members)
+ with col:
+ st.markdown(
+ f''
+ f'
{team}
'
+ f'
{members_html}
'
+ f'
',
+ unsafe_allow_html=True,
+ )
+
+ st.markdown(
+ ''
+ 'π μμ: ν νΈμ± β μ£Όμ μκ° β ν΄νΉ (2μκ°) β λ°ν β ν¬ν β μμ'
+ '
',
+ unsafe_allow_html=True,
+ )
+ st.markdown(
+ ''
+ 'π μμ λΆλ¬Έ: π μ¬λ―Έμ Β· π μμ±λμ Β· π μ€μ©μ±μ (1ν 1μ)'
+ '
',
+ unsafe_allow_html=True,
+ )
def render_stage_topics(data):