Инструмент подготовки и документация по разметке
Документация
Весь мини-курс состоит из множества блоков, каждый такой блок должен быть оформлен в документ и хранится в этом репозитории.
Пример: мини-курс - Формулирование гипотез и метрики состоит из блоков:
- Как генерировать гипотезы? -> отдельный документ
- Как формулировать гипотезы? -> отдельный документ
Хранение материалов
- Видео и изображения сохраняем в нашем хранилище в supabase
- root директория разбивается на ru / eng
- далее внутри уже выбранного языка заливаем директорию с названием мини-курса
Как храним сам курс?
- Каждый курс нужно хранить в этом репозитории в отдельной директории. Писать и тестировать документы нужно в Editor tool
Структура документа
- Header-часть
Состоит из названия курса / его идентифакатора в БД и ID блока (нумерация идет по порядку глав от 1 до N)
course_name=metrics_and_hypothesis
course_id=1
chapter_id=1
- Body-часть документа
Состоит из табов, каждый таб - это подблок из основного блока. Визуально на страице курса это будет отображаться в виде разделов с нумерацией и подсказками
[tab1=Чего ожидают от аналитиков в FAANG и Авито?]
Здесь контент по этой секции
[end_tab]
- Block-elements
В каждом табе верстается курс с помощью специальных блоков, никаких символов вне блоков недопустимо писать.
Общее описание любого блока:
- любые css свойства через запятую, которые потом применяются к элементу. Например, color: red
- private: отсутствуют
- target: <во что="" рендериться="" на="" клиенте="">во>
:black_small_square: Title
- desc: Заголовок различного размера
- public params:
- @size{string}: h1, h2, h3
- private: отсутствуют
- target: <во что="" рендериться="" на="" клиенте="">во>
:black_small_square: Code
- desc: Блок кода с подсветкой синтаксиса
- public params:
- @lang{string}: sql / python
- private: отсутствуют
- target: <во что="" рендериться="" на="" клиенте="">во>
- desc: Описание формул (layout is based on Donald Knuth’s TeX)
- public params: отсутствуют
- private: отсутствуют
- target: готовится <div> блок с библиотекой katex
:black_small_square: Table
- desc: Верстка таблиц (AsciiDoc pipe-table подход)
- public params: отсутствуют
- private: отсутствуют
- target: <во что="" рендериться="" на="" клиенте="">
```
[options="header"]
|===
| Имя | Возраст | Городво>
| Иван | 28 | Москва
| Мария | 31 | Санкт-Петербург
| Алексей| 25 | Новосибирск
|===
```
:black_small_square: Quote
- desc: Цитата
- public params: отсутствуют
- private: отсутствуют
- target: <во что="" рендериться="" на="" клиенте="">во>
:black_small_square: Image
- desc: Добавить изобраение из supabase storage
- public params:
- @name{string}: название из публичного бакета (имя бакета должно совпадать с course_name)
- @width{int}: ширина изображения в px
- private: отсутствуют
- target: <во что="" рендериться="" на="" клиенте="">во>
:black_small_square: Video
- desc: Добавить видео из supabase storage
- public params:
- @name{string}: название из публичного бакета (имя бакета должно совпадать с course_name)
- private: отсутствуют
- target: <во что="" рендериться="" на="" клиенте="">во>
:black_small_square: Task
- desc: Добавить задачу из БД, внутри блока рекомендкется дать описание задачи
- public params:
- @id{int}: идентификатор задачи. Номера идут от 1 до N в рамках course_id, то есть uniq key = (task_id, course_id)
- private:
-
| @users_solution: None |
<string |
number> (если приходит не None значит было решение и показать) |
- @task_type
- target: <во что="" рендериться="" на="" клиенте="">во>
:black_small_square: Tip
- desc: Блок с подсказкой
- public params: отсутствуют
- private:
- @showed: bool (были ли показана подсказка)
- target: <во что="" рендериться="" на="" клиенте="">во>
Text-Block-elements
Внутри блока Text можно использовать разметку:
- можно пользоваться всем, что здесь есть, кроме: таблиц, кода и цитат (эти блоки выше берем)