Установка
pip install hexlet
Создание урока
Пример готового урока, который можно пройти на hexlet.io: * урок на сайте – http://hexlet.io/lessons/example/ * исходник – https://github.com/Hexlet/example_lesson
Сгенерируем скелет нового урока:
hexlet-lesson init
Урок состоит из юнитов (theory, quiz, terminal, codex, code)
lesson.yml
name – название урока
language – язык(и) программирования, используемый в уроке. Например, python, java, go
description – описание урока в произвольном формате, без описания цели и аудитории. Опционально.
mission - цель урока/курса в ответа нв вопрос “что это даст”. Пример – “После этого урока вы сможете балансировать двоичные деревья”
audience – для кого этот урок/курс. Пример – “Урок рассчитан на людей, знакомых с базовыми принципами программирования”
units – список юнитов, которые будут содержаться в этом уроке. Перечислите только юниты, которые вы реализовали (см. пример в файле lesson.yml)
Теория (theory unit)
В main.yml указывается id ролика на youtube (например, eXI_TFW5Cdo). Опционально (если вы решили использовать видео для урока).
main.md - текст урока. Опционально.
transcription.md - расшифровка видео урока. Опционально.
Тесты (quiz unit)
Поддерживаются два вида вопросов: выбор ответа (quiz) и заполнение бланков (fill in). Для каждого вопроса необходимо прописывать уникальный slug (ключ верхнего уровня). В main.yml есть примеры вопросов.
type: answers
В блоке correct_answers можно перечислять несколько допустимых правильных ответов. См. пример в quiz/main.yml
type: filling
В блоке text помещаются блоки %{something}, в блоке correct_answers помешаются допустимые ответы для something. См. пример в quiz/main.yml
Терминал (terminal unit)
# FIXME
Код в браузере (codex unit)
# FIXME
Код (code unit)
Для унификации и простоты работы мы составили следующую схему: В папке code должен лежать файл Makefile который имеет три команды: * install - если необходимо делать установку дополнительных библиотек, создавать файлы, менять права и т.п. * run - если нужно запускать, например, сервер. * stop - для остановки (если run демонизирует) * test - основная команда, которая запускает тесты и по которой мы определяем выполненность задания.
Описание задания обязатально и должно находиться в файле README.md. Оно будет отображаться на сайте в соответствующем юните.
Отправка урока
Сначала нужно авторизоваться, используя свой логин и API_KEY со страницы http://hexlet.io/account/profile:
hexlet-lesson login <LOGIN> <API_KEY>
Теперь можно отправить урок на модерацию:
hexlet-lesson submit <ПУТЬ_ДО_УРОКА>
Release files for hexlet 0.6.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| hexlet-0.6.3.tar.gz | 14.0 kB | Details |
Release files / hexlet-0.6.3.tar.gz
| Download URL | hexlet-0.6.3.tar.gz |
|---|---|
| Size | 14.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
69f21c6551860c5c32b660c32a65a9c9546cf19b899b6e720afe107f94d5b8f6
|
|
BLAKE2b-256 checksum How to use checksums |
4b5b35042d3e9ea4dd1e39d13cbf3bff8649efab290c06d99cf560525f1cb14a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |