function renderRanking(developers) { const container = document.getElementById('ranking-container'); if (!container) return; const sorted = [...developers].sort((a, b) => b.streak - a.streak); const maxStreak = sorted[0].streak; let html = '

🏆 连胜排行榜

实时更新
'; sorted.forEach((dev, idx) => { const medal = idx === 0 ? '🥇' : idx === 1 ? '🥈' : idx === 2 ? '🥉' : `${idx+1}.`; const percent = (dev.streak / maxStreak) * 100; html += `
${medal}
${dev.name}
${dev.streak}连胜
`; }); html += '
'; container.innerHTML = html; } async function initRanking() { const devs = await getDevStatus(); renderRanking(devs); } window.initRanking = initRanking;