Когда карточек стало много, захотелось видеть прогресс: «прошёл 5 из 30». Основу сделал на клиенте — считаю текущий индекс от общего числа и обновляю строку. Простая мелочь, а мотивация от неё растёт. Тренажёр учит не только теме, но и ощущению «я иду по плану».
Нейтрально: прогресс = номер текущего шага / всего. Обновляем текстом или шириной полосы.
function paint(i, total){
const pct = total ? Math.round(i / total * 100) : 0;
bar.style.width = pct + "%";
label.textContent = `${i} из ${total}`;
}
Почувствовал, как важен мини-«прогресс» в обучении: даже моя же серия помогает держать ритм. Впечатляет, что я сам себе это построил, а не просто повторял за чужим примером.