За два часа разберём, как учителю самостоятельно собирать интерактивные одностраничники с визуализацией сложных тем, публиковать их в интернете за пять минут и использовать на уроках информатики.
Как из идеи и одного промпта рождается работающий HTML-визуализатор. Чек-лист выбора темы и цикл «промпт → код → браузер → правки».
Навык №1 для учителя: публикация одностраничника в интернете. Пошагово, с объяснениями: репозиторий, коммит, GitHub Pages, GitVerse Pages.
Сортировки, дерево рекурсии (задача 16) и черепашья графика (задача 6 ЕГЭ) с кодом на Python. Сравнение «плохой vs хороший», правила сильного промпта, шаблон для своих тем.
Одностраничное web-приложение — это визуализатор сложной темы в одном HTML-файле. Его не нужно «уметь программировать»: код генерирует нейросеть, а учитель управляет процессом. Вот конвейер, который мы будем использовать всю лекцию.
выбрать сложную для учеников тему
сформулировать задачу чат-боту
получить HTML/CSS/JS
сохранить как .html
открыть в браузере
новый промпт → повтор цикла
Прежде чем просить ИИ собрать визуализатор, честно ответьте на пять вопросов:
Файл на вашем компьютере видите только вы. Деплой превращает его в ссылку, которую можно отправить ученикам, показать на проекторе или зашить в QR-код. Разберём два бесплатных способа: международный GitHub Pages и российский GitVerse Pages.
index.html — точка входа. Именно этот файл откроется,
когда кто-то перейдёт по ссылке. Назовите главный файл именно так../file.html, а не C:\Users\... и не /file.html.| Термин | Что это | Аналогия для учителя |
|---|---|---|
| Репозиторий | Папка проекта с историей изменений | Папка с работами ученика + журнал правок |
| Коммит | Сохранённая версия изменений | «Сохранить как» с комментарием, что изменилось |
| Ветка (main) | Основная линия версий проекта | Чистовик (черновики — другие ветки) |
| Pages | Бесплатный хостинг статики из репозитория | Вывесить чистовик на школьную стену |
Нужна только почта. Никнейм станет частью адреса сайта:
ник.github.io — выбирайте читаемый.
Кнопка New repository → имя, например float-viz →
тип Public → Create repository. Галочку «Add a README» можно не ставить.
Add file → Upload files → перетащите ваш index.html
(и другие .html, если их несколько) → зелёная кнопка Commit changes.
Это и есть ваш первый коммит.
Settings → Pages (слева, раздел «Code and automation») → в Build and deployment выберите Source: Deploy from a branch → Branch: main, папка / (root) → Save.
Адрес: https://<ник>.github.io/<репозиторий>/.
Если 404 — подождите ещё пару минут и обновите страницу сбросом кэша (Ctrl+F5).
Загрузите новую версию файла тем же способом (Upload files → Commit). Сайт обновится автоматически через 1–2 минуты. Отдельно «передеплоивать» не нужно.
# один раз: клонировать репозиторий на компьютер git clone https://github.com/<ник>/float-viz.git cd float-viz # каждый раз после правок файла: git add index.html git commit -m "обновил визуализатор" git push
GitVerse — российский хостинг кода (разработка Сбера). Интерфейс похож на GitHub, регистрация возможна через Сбер ID — для многих учителей это проще.
Подойдёт учётная запись Сбер ID. Имя пользователя станет частью адреса сайта.
Новый репозиторий → имя (например, float-viz), публичный →
загрузите index.html через веб-интерфейс или git —
всё как на GitHub.
Настройки → Страницы → включите тумблер → в поле Источник выберите Ветка → укажите ветку main → сохраните.
Адрес проекта: https://<ник>.gitverse.site/<репозиторий>/.
Публикация занимает пару минут; при каждом новом коммите сайт обновляется сам.
./).
Если захотите публиковать без сборки — переключите источник на Воркфлоу
и выберите готовый шаблон Simple HTML Page.
| GitHub Pages | GitVerse Pages | |
|---|---|---|
| Адрес сайта | ник.github.io/репо | ник.gitverse.site/репо |
| Регистрация | почта | почта или Сбер ID |
| Включение | Settings → Pages → Deploy from a branch | Настройки → Страницы → источник «Ветка» |
| Ограничения | только статика | только статика; относительные пути |
| Кому удобен | всем, крупнейшее комьюнити | тем, кто работает в российском контуре |
index.html в корне
или Pages ещё не собрался: подождите 5 минут, обновите с Ctrl+F5./style.css или C:\...). Замените на относительные.index.html и пройдите шаги 1–5 сначала на GitHub, затем на GitVerse.
В конце у вас должно быть две работающие ссылки.
Хорошая новость: все визуализаторы устроены одинаково. Если вы поняли сортировку — вы поняли и граф. Разберём анатомию, а затем посмотрим на два живых примера.
массив чисел, граф, строка — «что» алгоритм обрабатывает
алгоритм заранее разбивается на последовательность мелких действий
каждый шаг умеет рисовать себя: подсветить, обменять, окрасить
старт / пауза / шаг / скорость — одинаково для всех тем
Алгоритм не рисует сам себя. Он порождает шаги-инструкции («сравнил», «обменял», «вызвал»), а движок проигрывает их с любой скоростью — вперёд, по одному, с паузой. Именно поэтому один и тот же каркас работает для любой темы. Ученикам же мы показываем привычный код на Python — и подсвечиваем строку, которая выполняется прямо сейчас:
def bubble_sort(a): n = len(a) for i in range(n): for j in range(n - i - 1): if a[j] > a[j + 1]: # ← шаг «compare» a[j], a[j + 1] = a[j + 1], a[j] # ← шаг «swap»
Каждый шаг визуализатора привязан к строке Python-кода: анимация слева, выполняемая строка справа. Когда просите ИИ собрать визуализатор, просите именно это: «алгоритм должен возвращать массив шагов, а не анимировать себя напрямую».
Два алгоритма на одном массиве — можно ввести свой. На что смотреть с учениками: подсветка строки Python-кода синхронно с анимацией, число сравнений и обменов, чем шейкерная экономит проходы (застрявший минимум — «черепаха» — уезжает на место за один обратный проход).
Открыть в отдельной вкладке: sorting_visualizer.html
Рекурсивная функция раскрывается в дерево вызовов прямо на глазах: жёлтые узлы — в стеке вызовов, фиолетовые — посчитаны, красная обводка — повторный вызов. На Фибоначчи ученики сами видят, почему без мемоизации F(30) считается вечность, и откуда берётся ответ для бланка.
Открыть в отдельной вкладке: recursion_tree_visualizer.html
Черепаха выполняет программу в нотации ЕГЭ (Вперёд, Направо, Повтори […]) прямо на координатной сетке, рядом — тот же код на Python (turtle) с подсветкой строки. В финале визуализатор сам подсчитывает точки с целыми координатами внутри фигуры — ровно то, что спрашивают в задаче 6. Программу можно ввести свою.
Открыть в отдельной вкладке: turtle_visualizer.html
Первый результат от ИИ почти всегда выглядит как антипримеры ниже: print-лог вместо картинки и мгновенный прогон без управления. Покажите ученикам обе пары — разница говорит сама за себя.
Файл visualizer_template.html — каркас в фирменном стиле:
панель ввода, сцена, показатели, движок Старт/Пауза/Шаг/Скорость.
Приложите шаблон к сообщению и попросите заменить только «логику»:
buildSteps(), applyStep(), resetData().
Откройте файл в браузере, покликайте «Шаг →» — это самый честный тест. Затем опубликуйте по инструкции из первой части.
Разница между антипримером и рабочим визуализатором — почти всегда разница между «сделай мне визуализацию» и точным заданием. Шесть правил:
visualizer_template.html или прошлый визуализатор) и попросите
сохранить стиль и структуру. Один файл-образец заменяет страницу описаний.buildSteps() возвращает массив, applyStep() рисует один шаг.
Тогда результат управляемый, а не «простыня, которая что-то делает».Приложен файл visualizer_template.html — это шаблон интерактивного
визуализатора алгоритмов (белый фон, фиолетовый акцент #8736f5,
тонкая типографика). Сохрани стиль и структуру файла.
Сделай из него визуализатор темы «[ваша тема: напр. бинарный поиск]»:
1. Замени панель ввода на входные данные моей темы.
2. Алгоритм оформи как функцию buildSteps(), возвращающую массив
шагов-инструкций (compare / swap / visit / done — или свои типы).
Алгоритм НЕ должен анимировать себя сам — только шаги.
3. applyStep(i, step) отрисовывает один шаг на сцене.
4. resetData() рисует исходное состояние.
5. Рядом со сценой покажи код алгоритма на Python (как в школьной
программе) и подсвечивай строку, которая выполняется на этом шаге.
6. Добавь счётчики: сравнения, обмены / вызовы, текущий шаг.
7. Управление (Старт/Пауза/Шаг/Сброс/Скорость) не трогай —
оно уже работает через VizCore.
Верни один готовый HTML-файл без внешних зависимостей.
.html → браузер → 2–3 итерации правок.
Можно стартовать от visualizer_template.html.index.html, проверьте относительные пути.Полезные ссылки: github.com · gitverse.ru · документация GitHub Pages · документация GitVerse Pages
Обозненко Арсений Михайлович · Цифровая школа МГПУ