Чистые URL для кейсов: cases/slug/ вместо cases/slug.html, исправлены пути к ассетам

This commit is contained in:
Local Build committed 2026-08-15 16:37:54 +02:00
1 parent c66b9b856f
commit c4bfe5c9ee
43 files changed
+10703 -10489

No files matched your search

+13 -13
View File
@@ -191,12 +191,12 @@
controls
preload="metadata"
playsinline
poster="../assets/ai-platform-primo-rpa/fields-maping.webp"
poster="{{assetPrefix}}assets/ai-platform-primo-rpa/fields-maping.webp"
data-case-video-player
style="display: block; width: 100%; height: auto; margin: 0"
>
<source src="../assets/ai-platform-primo-rpa/fields-maping.webm" type="video/webm" />
<source src="../assets/ai-platform-primo-rpa/fields-maping.mp4" type="video/mp4" />
<source src="{{assetPrefix}}assets/ai-platform-primo-rpa/fields-maping.webm" type="video/webm" />
<source src="{{assetPrefix}}assets/ai-platform-primo-rpa/fields-maping.mp4" type="video/mp4" />
Ваш браузер не поддерживает видео.
</video>
</div>
@@ -217,7 +217,7 @@
</aside>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/dataset-editor.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/dataset-editor.webp"
alt="Редактор датасета — текущая версия интерфейса"
width="1200"
height="675"
@@ -229,7 +229,7 @@
</figure>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/dataset-editor-old.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/dataset-editor-old.webp"
alt="Редактор датасета — предыдущая версия для сравнения"
width="1200"
height="675"
@@ -241,7 +241,7 @@
</figure>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/dataset-lerning.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/dataset-lerning.webp"
alt="Экран обучения модели по датасету"
width="1200"
height="675"
@@ -253,7 +253,7 @@
</figure>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/dataset-quality.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/dataset-quality.webp"
alt="Контроль качества модели после обучения"
width="1200"
height="675"
@@ -270,7 +270,7 @@
</p>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/in-project-inference.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/in-project-inference.webp"
alt="Интерфейс inference модели внутри проекта"
width="1200"
height="675"
@@ -284,7 +284,7 @@
<div class="case-media-tall" data-case-tall-root>
<div class="case-media-tall__clip" id="ai-case-tall-inference-full" data-case-tall-clip>
<img
src="../assets/ai-platform-primo-rpa/in-project-inference-full.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/in-project-inference-full.webp"
alt="Inference в проекте — полный экран интерфейса"
width="1200"
loading="lazy"
@@ -311,7 +311,7 @@
</figure>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/in-project-inference-old.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/in-project-inference-old.webp"
alt="Предыдущая версия экрана inference в проекте"
width="1200"
height="675"
@@ -340,7 +340,7 @@
</p>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/fullscreen_modal-import_dataset.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/fullscreen_modal-import_dataset.webp"
alt="Модальное окно импорта датасета на отдельном экране"
width="1440"
height="1024"
@@ -352,7 +352,7 @@
</figure>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/full-screen-mode-with-panels.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/full-screen-mode-with-panels.webp"
alt="Полноэкранный режим с боковыми панелями"
width="1200"
height="675"
@@ -364,7 +364,7 @@
</figure>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/full-screen-mode-zen.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/full-screen-mode-zen.webp"
alt="Полноэкранный режим без отвлекающих панелей"
width="1200"
height="675"
+21 -21
View File
@@ -130,7 +130,7 @@
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/main-new.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/main-new.webp"
alt="Обновлённый редактор разметки датасета — главный экран сервиса после редизайна"
width="1200"
height="675"
@@ -195,7 +195,7 @@
</aside>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/main-new.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/main-new.webp"
alt="Главный экран AI Server с компактной верхней навигацией"
width="1200"
height="675"
@@ -210,7 +210,7 @@
</p>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/nav-project-nlp.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/nav-project-nlp.webp"
alt="Внутренняя навигация NLP-проекта"
width="1200"
height="675"
@@ -222,7 +222,7 @@
</figure>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/nav-project-ocr.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/nav-project-ocr.webp"
alt="Внутренняя навигация OCR-проекта"
width="1200"
height="675"
@@ -242,7 +242,7 @@
</aside>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/nav-secondary-detail_view.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/nav-secondary-detail_view.webp"
alt="Крупный план вторичной навигации — пункты в форме стрелок"
width="1200"
height="675"
@@ -264,7 +264,7 @@
</p>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/dataset-editor.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/dataset-editor.webp"
alt="Редактор разметки датасета — размечаемый документ в центре, панели полей и инструментов по бокам"
width="1200"
height="675"
@@ -279,7 +279,7 @@
</p>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/dataset_editor-wireframe-default_mode.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/dataset_editor-wireframe-default_mode.webp"
alt="Схематичный каркас редактора — центральная рабочая область и боковые панели"
width="1200"
height="675"
@@ -294,7 +294,7 @@
</p>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/full-screen-mode-with-panels.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/full-screen-mode-with-panels.webp"
alt="Полноэкранный режим редактора с раскрытыми боковыми панелями"
width="1200"
height="675"
@@ -306,7 +306,7 @@
</figure>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/full-screen-mode-zen.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/full-screen-mode-zen.webp"
alt="Полноэкранный режим без панелей — только размечаемый документ и нижняя панель"
width="1200"
height="675"
@@ -318,7 +318,7 @@
</figure>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/dataset_editor-wireframe-zen_mode-both_panels.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/dataset_editor-wireframe-zen_mode-both_panels.webp"
alt="Четыре варианта каркаса полноэкранного режима"
width="1200"
height="675"
@@ -330,7 +330,7 @@
</figure>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/dataset_editor-main_toolbar.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/dataset_editor-main_toolbar.webp"
alt="Нижняя панель инструментов — переключение между изображениями и быстрые действия разметки"
width="1200"
height="675"
@@ -353,12 +353,12 @@
controls
preload="metadata"
playsinline
poster="../assets/ai-platform-primo-rpa/fields-maping.webp"
poster="{{assetPrefix}}assets/ai-platform-primo-rpa/fields-maping.webp"
data-case-video-player
style="display: block; width: 100%; height: auto; margin: 0"
>
<source src="../assets/ai-platform-primo-rpa/fields-maping.webm" type="video/webm" />
<source src="../assets/ai-platform-primo-rpa/fields-maping.mp4" type="video/mp4" />
<source src="{{assetPrefix}}assets/ai-platform-primo-rpa/fields-maping.webm" type="video/webm" />
<source src="{{assetPrefix}}assets/ai-platform-primo-rpa/fields-maping.mp4" type="video/mp4" />
Ваш браузер не поддерживает видео.
</video>
</div>
@@ -376,7 +376,7 @@
</p>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/in_project-learn-overview.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/in_project-learn-overview.webp"
alt="Раздел обучения моделей — вертикальная лента карточек"
width="1200"
height="675"
@@ -391,7 +391,7 @@
</p>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/in_project-learn-card-new.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/in_project-learn-card-new.webp"
alt="Карточка настройки обучения — матрица качества датасета и блок параметров запуска"
width="1200"
height="675"
@@ -414,7 +414,7 @@
</p>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/in_project-learn-card-learning_process.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/in_project-learn-card-learning_process.webp"
alt="Карточка запущенного процесса обучения — статус, прогресс и метрики"
width="1200"
height="675"
@@ -426,7 +426,7 @@
</figure>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/in_project-learn-card-learning_process_wireframe.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/in_project-learn-card-learning_process_wireframe.webp"
alt="Каркас карточки процесса обучения"
width="1200"
height="675"
@@ -441,7 +441,7 @@
</p>
<figure class="case-media case-media--natural">
<img
src="../assets/ai-platform-primo-rpa/in_project-learn-card-сollapsed.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/in_project-learn-card-сollapsed.webp"
alt="Свёрнутая карточка обучения — одна строка с названием и статусом процесса"
width="1200"
height="675"
@@ -470,7 +470,7 @@
</aside>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/fullscreen_modal-import_dataset.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/fullscreen_modal-import_dataset.webp"
alt="Импорт датасета в модальном окне на отдельной странице"
width="1440"
height="1024"
@@ -485,7 +485,7 @@
</p>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/fullscreen_modal-in_project-import_dataset.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/fullscreen_modal-in_project-import_dataset.webp"
alt="Заглушка активного импорта внутри проекта"
width="1200"
height="675"
+25 -25
View File
@@ -180,7 +180,7 @@
</p>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/main.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/main.webp"
alt="Предыдущая главная навигация сервиса AI Server"
width="2520"
height="1680"
@@ -192,7 +192,7 @@
</figure>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/main-new.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/main-new.webp"
alt="Обновлённая главная навигация сервиса AI Server"
width="1920"
height="1080"
@@ -211,7 +211,7 @@
</p>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/nav-project-nlp.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/nav-project-nlp.webp"
alt="Навигация внутри NLP-проекта и главная навигация сервиса"
width="1920"
height="302"
@@ -223,7 +223,7 @@
</figure>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/nav-project-ocr.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/nav-project-ocr.webp"
alt="Навигация внутри OCR-проекта и главная навигация сервиса"
width="1920"
height="302"
@@ -238,7 +238,7 @@
</p>
<figure class="case-media">
<img
src="../assets/ai-platform-primo-rpa/nav-secondary-detail_view.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/nav-secondary-detail_view.webp"
alt="Вторичная навигация проекта со стрелочной формой пунктов"
width="924"
height="101"
@@ -254,7 +254,7 @@
</p>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/dataset-editor-old.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/dataset-editor-old.webp"
alt="Редактор датасета — предыдущая версия для сравнения"
width="1200"
height="675"
@@ -269,7 +269,7 @@
</p>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/dataset-editor.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/dataset-editor.webp"
alt="Редактор датасета — текущая версия интерфейса"
width="1200"
height="675"
@@ -284,7 +284,7 @@
</p>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/dataset_editor-wireframe-default_mode.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/dataset_editor-wireframe-default_mode.webp"
alt="Вайрфрейм редактора датасета — режим по умолчанию"
width="1200"
height="675"
@@ -301,7 +301,7 @@
<div class="case-media-gallery__grid">
<div class="case-media-gallery__item">
<img
src="../assets/ai-platform-primo-rpa/full-screen-mode-with-panels.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/full-screen-mode-with-panels.webp"
alt="Полноэкранный режим с боковыми панелями"
loading="lazy"
decoding="async"
@@ -310,7 +310,7 @@
</div>
<div class="case-media-gallery__item">
<img
src="../assets/ai-platform-primo-rpa/full-screen-mode-zen.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/full-screen-mode-zen.webp"
alt="Полноэкранный режим без отвлекающих панелей"
loading="lazy"
decoding="async"
@@ -324,7 +324,7 @@
<div class="case-media-gallery__grid">
<div class="case-media-gallery__item">
<img
src="../assets/ai-platform-primo-rpa/dataset_editor-wireframe-zen_mode-both_panels.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/dataset_editor-wireframe-zen_mode-both_panels.webp"
alt="Вайрфрейм zen mode — обе панели"
loading="lazy"
decoding="async"
@@ -333,7 +333,7 @@
</div>
<div class="case-media-gallery__item">
<img
src="../assets/ai-platform-primo-rpa/dataset_editor-wireframe-zen_mode.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/dataset_editor-wireframe-zen_mode.webp"
alt="Вайрфрейм zen mode"
loading="lazy"
decoding="async"
@@ -342,7 +342,7 @@
</div>
<div class="case-media-gallery__item">
<img
src="../assets/ai-platform-primo-rpa/dataset_editor-wireframe-zen_mode-left_panel.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/dataset_editor-wireframe-zen_mode-left_panel.webp"
alt="Вайрфрейм zen mode — левая панель"
loading="lazy"
decoding="async"
@@ -351,7 +351,7 @@
</div>
<div class="case-media-gallery__item">
<img
src="../assets/ai-platform-primo-rpa/dataset_editor-wireframe-zen_mode-right_panel.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/dataset_editor-wireframe-zen_mode-right_panel.webp"
alt="Вайрфрейм zen mode — правая панель"
loading="lazy"
decoding="async"
@@ -366,7 +366,7 @@
</p>
<figure class="case-media case-media--content">
<img
src="../assets/ai-platform-primo-rpa/dataset_editor-main_toolbar.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/dataset_editor-main_toolbar.webp"
alt="Главная панель инструментов редактора датасета"
width="1200"
height="675"
@@ -383,7 +383,7 @@
</p>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/in_project-learn-overview.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/in_project-learn-overview.webp"
alt="Обзор карточек настройки обучения в проекте"
width="1920"
height="740"
@@ -398,7 +398,7 @@
</p>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/in_project-learn-card-new.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/in_project-learn-card-new.webp"
alt="Карточка настройки обучения"
width="1306"
height="1104"
@@ -424,7 +424,7 @@
</p>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/in_project-learn-card-learning_process.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/in_project-learn-card-learning_process.webp"
alt="Карточка процесса обучения модели"
width="1306"
height="1066"
@@ -439,7 +439,7 @@
</p>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/in_project-learn-card-learning_process_wireframe.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/in_project-learn-card-learning_process_wireframe.webp"
alt="Вайрфрейм карточки процесса обучения"
width="1306"
height="1066"
@@ -454,7 +454,7 @@
</p>
<figure class="case-media case-media--content">
<img
src="../assets/ai-platform-primo-rpa/in_project-learn-card-сollapsed.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/in_project-learn-card-сollapsed.webp"
alt="Свёрнутая карточка настройки обучения"
width="1306"
height="102"
@@ -481,12 +481,12 @@
controls
preload="metadata"
playsinline
poster="../assets/ai-platform-primo-rpa/fields-maping.webp"
poster="{{assetPrefix}}assets/ai-platform-primo-rpa/fields-maping.webp"
data-case-video-player
style="display: block; width: 100%; height: auto; margin: 0"
>
<source src="../assets/ai-platform-primo-rpa/fields-maping.webm" type="video/webm" />
<source src="../assets/ai-platform-primo-rpa/fields-maping.mp4" type="video/mp4" />
<source src="{{assetPrefix}}assets/ai-platform-primo-rpa/fields-maping.webm" type="video/webm" />
<source src="{{assetPrefix}}assets/ai-platform-primo-rpa/fields-maping.mp4" type="video/mp4" />
Ваш браузер не поддерживает видео.
</video>
</div>
@@ -505,7 +505,7 @@
</p>
<figure class="case-media case-media--wide">
<img
src="../assets/ai-platform-primo-rpa/fullscreen_modal-import_dataset.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/fullscreen_modal-import_dataset.webp"
alt="Модальное окно импорта датасета на отдельном экране"
width="1440"
height="1024"
@@ -520,7 +520,7 @@
</p>
<figure class="case-media case-media--content">
<img
src="../assets/ai-platform-primo-rpa/fullscreen_modal-in_project-import_dataset.webp"
src="{{assetPrefix}}assets/ai-platform-primo-rpa/fullscreen_modal-in_project-import_dataset.webp"
alt="Импорт датасета внутри проекта"
width="1920"
height="740"
+6 -6
View File
@@ -667,9 +667,9 @@
</ul>
<p class="section__prose">
Навыки: мозаика на широком экране — см.
<a href="../index.html#skills">главную, #skills</a>. Портфолио: карусель на
<a href="../../index.html#skills">главную, #skills</a>. Портфолио: карусель на
<code>100vw</code> с <code>--projects-card-width</code> и JS-прокруткой — на главной
<a href="../index.html#projects">#projects</a>.
<a href="../../index.html#projects">#projects</a>.
</p>
<h3>Wide в кейсах</h3>
@@ -738,7 +738,7 @@
<div class="portfolio-card__cover" aria-hidden="true">
<img
class="portfolio-card__image"
src="../assets/shared/placeholder.webp"
src="{{assetPrefix}}assets/shared/placeholder.webp"
alt=""
width="400"
height="225"
@@ -797,7 +797,7 @@
<a class="contact-card contact-card--link contact-card--brand-tg" href="https://t.me/mamadaevv" rel="noopener noreferrer">
<span class="contact-card__corner" aria-hidden="true"></span>
<span class="contact-card__icon" aria-hidden="true">
<img src="../assets/shared/icons/tg.svg" alt="" width="24" height="24" loading="eager" decoding="async" />
<img src="{{assetPrefix}}assets/shared/icons/tg.svg" alt="" width="24" height="24" loading="eager" decoding="async" />
</span>
<span class="contact-card__body">
<span class="contact-card__name">contact-card--link</span>
@@ -845,7 +845,7 @@
Живой эталон со всеми вариантами — на отдельной странице; оттуда копируют куски при сборке нового кейса.
</p>
<p>
<a class="btn btn--secondary btn--flat" href="template-elements-demo.html">Демо элементов кейса</a>
<a class="btn btn--secondary btn--flat" href="template-elements-demo/">Демо элементов кейса</a>
</p>
</div>
@@ -856,7 +856,7 @@
раскладка вынесены на отдельную страницу.
</p>
<p>
<a class="btn btn--secondary btn--flat" href="mini-projects-showcase.html">Каталог карточек активности</a>
<a class="btn btn--secondary btn--flat" href="mini-projects-showcase/">Каталог карточек активности</a>
</p>
</div>
</div>
+38 -38
View File
@@ -119,7 +119,7 @@
<img
src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"
alt="Обзор приложения Lunacy"
data-src="../assets/lunacy/Lunacy_app_overview.webp"
data-src="{{assetPrefix}}assets/lunacy/Lunacy_app_overview.webp"
loading="lazy"
decoding="async"
data-image-viewer
@@ -134,7 +134,7 @@
<img
src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"
alt="Настройки blob на холсте"
data-src="../assets/lunacy/blob_settings_on_canvas.webp"
data-src="{{assetPrefix}}assets/lunacy/blob_settings_on_canvas.webp"
loading="lazy"
decoding="async"
data-image-viewer
@@ -149,7 +149,7 @@
<img
src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"
alt="Модальное окно сравнения компонентов"
data-src="../assets/lunacy/compare_components_modal_window.webp"
data-src="{{assetPrefix}}assets/lunacy/compare_components_modal_window.webp"
loading="lazy"
decoding="async"
data-image-viewer
@@ -160,7 +160,7 @@
<img
src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"
alt="Индикатор обновления компонентов в панели"
data-src="../assets/lunacy/components_update_indicator_location_panel.webp"
data-src="{{assetPrefix}}assets/lunacy/components_update_indicator_location_panel.webp"
loading="lazy"
decoding="async"
data-image-viewer
@@ -175,7 +175,7 @@
<img
src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"
alt="Модальное окно: создать прототип на холсте"
data-src="../assets/lunacy/modal_window_for_prototype_create_on_canvas.webp"
data-src="{{assetPrefix}}assets/lunacy/modal_window_for_prototype_create_on_canvas.webp"
loading="lazy"
decoding="async"
data-image-viewer
@@ -186,7 +186,7 @@
<img
src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"
alt="Модальное окно: состояния панели прототипа"
data-src="../assets/lunacy/modal_window_for_prototype_panel_states.webp"
data-src="{{assetPrefix}}assets/lunacy/modal_window_for_prototype_panel_states.webp"
loading="lazy"
decoding="async"
data-image-viewer
@@ -201,7 +201,7 @@
<img
src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"
alt="Shadow Pro: панель настроек"
data-src="../assets/lunacy/shadow_pro_settings_panel.webp"
data-src="{{assetPrefix}}assets/lunacy/shadow_pro_settings_panel.webp"
loading="lazy"
decoding="async"
data-image-viewer
@@ -212,7 +212,7 @@
<img
src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"
alt="Shadow Pro: идеи"
data-src="../assets/lunacy/shadow_pro_settings_ideas.webp"
data-src="{{assetPrefix}}assets/lunacy/shadow_pro_settings_ideas.webp"
loading="lazy"
decoding="async"
data-image-viewer
@@ -223,7 +223,7 @@
<img
src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"
alt="Shadow Pro: модалка, авто включено"
data-src="../assets/lunacy/shadow_pro_settings_modal_auto_on.webp"
data-src="{{assetPrefix}}assets/lunacy/shadow_pro_settings_modal_auto_on.webp"
loading="lazy"
decoding="async"
data-image-viewer
@@ -234,7 +234,7 @@
<img
src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"
alt="Shadow Pro: модалка, авто выключено"
data-src="../assets/lunacy/shadow_pro_settings_modal_auto-off.webp"
data-src="{{assetPrefix}}assets/lunacy/shadow_pro_settings_modal_auto-off.webp"
loading="lazy"
decoding="async"
data-image-viewer
@@ -251,31 +251,31 @@
<figure class="case-media case-media-gallery" style="--case-gallery-cols: 3">
<div class="case-media-gallery__grid">
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="blob panel v1" data-src="../assets/lunacy/blob_settings_panel_v1.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="blob panel v1" data-src="{{assetPrefix}}assets/lunacy/blob_settings_panel_v1.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="blob panel v2" data-src="../assets/lunacy/blob_settings_panel_v2.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="blob panel v2" data-src="{{assetPrefix}}assets/lunacy/blob_settings_panel_v2.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="blob panel v3" data-src="../assets/lunacy/blob_settings_panel_v3.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="blob panel v3" data-src="{{assetPrefix}}assets/lunacy/blob_settings_panel_v3.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="blob panel v4" data-src="../assets/lunacy/blob_settings_panel_v4.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="blob panel v4" data-src="{{assetPrefix}}assets/lunacy/blob_settings_panel_v4.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="blob panel v5" data-src="../assets/lunacy/blob_settings_panel_v5.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="blob panel v5" data-src="{{assetPrefix}}assets/lunacy/blob_settings_panel_v5.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="blob panel v6" data-src="../assets/lunacy/blob_settings_panel_v6.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="blob panel v6" data-src="{{assetPrefix}}assets/lunacy/blob_settings_panel_v6.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="blob panel v7" data-src="../assets/lunacy/blob_settings_panel_v7.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="blob panel v7" data-src="{{assetPrefix}}assets/lunacy/blob_settings_panel_v7.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="blob panel v8" data-src="../assets/lunacy/blob_settings_panel_v8.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="blob panel v8" data-src="{{assetPrefix}}assets/lunacy/blob_settings_panel_v8.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="blob panel v9" data-src="../assets/lunacy/blob_settings_panel_v9.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="blob panel v9" data-src="{{assetPrefix}}assets/lunacy/blob_settings_panel_v9.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
</div>
<figcaption>Девять версий подряд: читать слева направо, сверху вниз.</figcaption>
@@ -290,58 +290,58 @@
<figure class="case-media case-media-gallery" style="--case-gallery-cols: 4">
<div class="case-media-gallery__grid">
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v1" data-src="../assets/lunacy/slider_v1.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v1" data-src="{{assetPrefix}}assets/lunacy/slider_v1.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v2" data-src="../assets/lunacy/slider_v2.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v2" data-src="{{assetPrefix}}assets/lunacy/slider_v2.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v3" data-src="../assets/lunacy/slider_v3.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v3" data-src="{{assetPrefix}}assets/lunacy/slider_v3.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v4" data-src="../assets/lunacy/slider_v4.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v4" data-src="{{assetPrefix}}assets/lunacy/slider_v4.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v5" data-src="../assets/lunacy/slider_v5.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v5" data-src="{{assetPrefix}}assets/lunacy/slider_v5.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v6" data-src="../assets/lunacy/slider_v6.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v6" data-src="{{assetPrefix}}assets/lunacy/slider_v6.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v7" data-src="../assets/lunacy/slider_v7.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v7" data-src="{{assetPrefix}}assets/lunacy/slider_v7.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v8" data-src="../assets/lunacy/slider_v8.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v8" data-src="{{assetPrefix}}assets/lunacy/slider_v8.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v9" data-src="../assets/lunacy/slider_v9.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v9" data-src="{{assetPrefix}}assets/lunacy/slider_v9.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v10" data-src="../assets/lunacy/slider_v10.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v10" data-src="{{assetPrefix}}assets/lunacy/slider_v10.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v11" data-src="../assets/lunacy/slider_v11.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v11" data-src="{{assetPrefix}}assets/lunacy/slider_v11.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v12" data-src="../assets/lunacy/slider_v12.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v12" data-src="{{assetPrefix}}assets/lunacy/slider_v12.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v13" data-src="../assets/lunacy/slider_v13.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v13" data-src="{{assetPrefix}}assets/lunacy/slider_v13.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider 14" data-src="../assets/lunacy/slider_14.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider 14" data-src="{{assetPrefix}}assets/lunacy/slider_14.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v15" data-src="../assets/lunacy/slider_v15.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v15" data-src="{{assetPrefix}}assets/lunacy/slider_v15.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v16" data-src="../assets/lunacy/slider_v16.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v16" data-src="{{assetPrefix}}assets/lunacy/slider_v16.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v17" data-src="../assets/lunacy/slider_v17.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v17" data-src="{{assetPrefix}}assets/lunacy/slider_v17.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v18" data-src="../assets/lunacy/slider_v18.webp" loading="lazy" decoding="async" data-image-viewer />
<img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" alt="slider v18" data-src="{{assetPrefix}}assets/lunacy/slider_v18.webp" loading="lazy" decoding="async" data-image-viewer />
</div>
</div>
<figcaption>Восемнадцать вариантов слайдера плюс отдельный кадр <code>slider_14</code> между v13 и v15.</figcaption>
@@ -354,7 +354,7 @@
<img
src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"
alt="Все слайдеры: общий вид"
data-src="../assets/lunacy/sliders_all_set.webp"
data-src="{{assetPrefix}}assets/lunacy/sliders_all_set.webp"
loading="lazy"
decoding="async"
data-image-viewer
+1 -1
View File
@@ -94,7 +94,7 @@
<h2>Обложка</h2>
<figure class="case-media case-media--wide">
<img
src="../assets/manu-game-maker/cover.webp"
src="{{assetPrefix}}assets/manu-game-maker/cover.webp"
alt="Интерфейс игрового движка MANU — обложка кейса"
width="1200"
height="675"
+5 -5
View File
@@ -483,7 +483,7 @@
<div class="mp-card__media" aria-hidden="true">
<img
class="mp-card__image"
src="../assets/shared/placeholder.webp"
src="{{assetPrefix}}assets/shared/placeholder.webp"
alt=""
width="560"
height="315"
@@ -508,7 +508,7 @@
<div class="mp-card__media" aria-hidden="true">
<img
class="mp-card__image"
src="../assets/shared/placeholder.webp"
src="{{assetPrefix}}assets/shared/placeholder.webp"
alt=""
width="560"
height="315"
@@ -533,7 +533,7 @@
<div class="mp-card__media" aria-hidden="true">
<img
class="mp-card__image"
src="../assets/shared/placeholder.webp"
src="{{assetPrefix}}assets/shared/placeholder.webp"
alt=""
width="560"
height="315"
@@ -558,7 +558,7 @@
<div class="mp-card__media" aria-hidden="true">
<img
class="mp-card__image"
src="../assets/shared/placeholder.webp"
src="{{assetPrefix}}assets/shared/placeholder.webp"
alt=""
width="560"
height="315"
@@ -583,7 +583,7 @@
<div class="mp-card__media" aria-hidden="true">
<img
class="mp-card__image"
src="../assets/shared/placeholder.webp"
src="{{assetPrefix}}assets/shared/placeholder.webp"
alt=""
width="560"
height="315"
+1 -1
View File
@@ -94,7 +94,7 @@
<h2>Обложка</h2>
<figure class="case-media case-media--wide">
<img
src="../assets/mobile-clinic-app/cover.webp"
src="{{assetPrefix}}assets/mobile-clinic-app/cover.webp"
alt="Мобильное приложение для сети клиник — обложка кейса"
width="1200"
height="675"
@@ -112,9 +112,9 @@
<h3>Фильтр использования</h3>
<figure class="case-media">
<div class="case-video-shell">
<video controls preload="metadata" playsinline poster="../assets/obsidian-plugin-columns-view/filter use.webp" data-case-video-player style="display: block; width: 100%; height: auto">
<source src="../assets/obsidian-plugin-columns-view/filter use.webm" type="video/webm" />
<source src="../assets/obsidian-plugin-columns-view/filter use.mp4" type="video/mp4" />
<video controls preload="metadata" playsinline poster="{{assetPrefix}}assets/obsidian-plugin-columns-view/filter use.webp" data-case-video-player style="display: block; width: 100%; height: auto">
<source src="{{assetPrefix}}assets/obsidian-plugin-columns-view/filter use.webm" type="video/webm" />
<source src="{{assetPrefix}}assets/obsidian-plugin-columns-view/filter use.mp4" type="video/mp4" />
Ваш браузер не поддерживает видео.
</video>
</div>
@@ -124,9 +124,9 @@
<h3>Конфигурация отображения</h3>
<figure class="case-media">
<div class="case-video-shell">
<video controls preload="metadata" playsinline poster="../assets/obsidian-plugin-columns-view/view configure.webp" data-case-video-player style="display: block; width: 100%; height: auto">
<source src="../assets/obsidian-plugin-columns-view/view configure.webm" type="video/webm" />
<source src="../assets/obsidian-plugin-columns-view/view configure.mp4" type="video/mp4" />
<video controls preload="metadata" playsinline poster="{{assetPrefix}}assets/obsidian-plugin-columns-view/view configure.webp" data-case-video-player style="display: block; width: 100%; height: auto">
<source src="{{assetPrefix}}assets/obsidian-plugin-columns-view/view configure.webm" type="video/webm" />
<source src="{{assetPrefix}}assets/obsidian-plugin-columns-view/view configure.mp4" type="video/mp4" />
Ваш браузер не поддерживает видео.
</video>
</div>
+2 -2
View File
@@ -204,7 +204,7 @@
<h3>Было</h3>
<figure class="case-media case-media--wide">
<img
src="../assets/orc-primo-rpa/projects--table-old.webp"
src="{{assetPrefix}}assets/orc-primo-rpa/projects--table-old.webp"
alt="Список проектов в оркестраторе — предыдущая версия таблицы"
width="1919"
height="867"
@@ -217,7 +217,7 @@
<h3>Стало</h3>
<figure class="case-media case-media--wide">
<img
src="../assets/orc-primo-rpa/projects--table-new.webp"
src="{{assetPrefix}}assets/orc-primo-rpa/projects--table-new.webp"
alt="Список проектов в оркестраторе — обновлённая таблица"
width="1366"
height="768"
@@ -94,7 +94,7 @@
<h2>Обложка</h2>
<figure class="case-media case-media--wide">
<img
src="../assets/task-distribution-concept/cover.webp"
src="{{assetPrefix}}assets/task-distribution-concept/cover.webp"
alt="Концепт сервиса распределения задач — обложка кейса"
width="1200"
height="675"
+30 -30
View File
@@ -127,7 +127,7 @@
<h2 id="referensy">Референсы</h2>
<figure class="case-media case-media--wide">
<img src="../assets/task-tracker/refs.webp" alt="Референсы" width="1200" height="800" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/task-tracker/refs.webp" alt="Референсы" width="1200" height="800" loading="lazy" decoding="async" data-image-viewer />
</figure>
<ul>
<li>Таск-трекеры (Trello, Monday, YouTrack и др.)</li>
@@ -139,9 +139,9 @@
<h3 id="skrinkast">Скринкаст</h3>
<figure class="case-media" style="margin: 0.85rem 0 1.2rem">
<div class="case-video-shell">
<video controls preload="metadata" playsinline poster="../assets/task-tracker/full_preview.webp" data-case-video-player style="display: block; width: 100%; height: auto; margin: 0">
<source src="../assets/task-tracker/full_preview.webm" type="video/webm" />
<source src="../assets/task-tracker/full_preview.mp4" type="video/mp4" />
<video controls preload="metadata" playsinline poster="{{assetPrefix}}assets/task-tracker/full_preview.webp" data-case-video-player style="display: block; width: 100%; height: auto; margin: 0">
<source src="{{assetPrefix}}assets/task-tracker/full_preview.webm" type="video/webm" />
<source src="{{assetPrefix}}assets/task-tracker/full_preview.mp4" type="video/mp4" />
Ваш браузер не поддерживает видео.
</video>
</div>
@@ -154,7 +154,7 @@
rel="noopener noreferrer"
>
<span class="case-link-card__media">
<img src="../assets/task-tracker/tab_all-tasks.webp" alt="Превью прототипа Figma" width="1200" height="800" loading="lazy" decoding="async" />
<img src="{{assetPrefix}}assets/task-tracker/tab_all-tasks.webp" alt="Превью прототипа Figma" width="1200" height="800" loading="lazy" decoding="async" />
</span>
<span class="case-link-card__body">
<span class="case-link-card__title">Прототип Figma</span>
@@ -173,21 +173,21 @@
<h3 id="tabs">Вкладки (Tabs)</h3>
<p class="section__prose">На вкладке <strong>All tasks</strong> сотрудник может ознакомиться со всеми доступными задачами.</p>
<figure class="case-media case-media--wide">
<img src="../assets/task-tracker/tab_all-tasks.webp" alt="Untitled" width="1200" height="800" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/task-tracker/tab_all-tasks.webp" alt="Untitled" width="1200" height="800" loading="lazy" decoding="async" data-image-viewer />
</figure>
<p class="section__prose">
На вкладке <strong>My tasks</strong> отображаются только те задачи, что закреплены за текущим сотрудником. Группировка идёт по статусам задач (статус в карточке задачи скрыт).
</p>
<figure class="case-media case-media--wide">
<img src="../assets/task-tracker/tab_my-tasks.webp" alt="Untitled" width="1200" height="800" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/task-tracker/tab_my-tasks.webp" alt="Untitled" width="1200" height="800" loading="lazy" decoding="async" data-image-viewer />
</figure>
<p class="section__prose">На вкладке <strong>Task by assign</strong> отображены все задачи c разбивкой по исполнителю.</p>
<figure class="case-media case-media--wide">
<img src="../assets/task-tracker/tab_tasks-by-assign.webp" alt="Untitled" width="1200" height="800" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/task-tracker/tab_tasks-by-assign.webp" alt="Untitled" width="1200" height="800" loading="lazy" decoding="async" data-image-viewer />
</figure>
<p class="section__prose">В правой части имеются опции для текущей вкладки.</p>
<figure class="case-media case-media--natural">
<img src="../assets/task-tracker/actions_for_page.webp" alt="Untitled" width="1200" height="800" loading="lazy" decoding="async" />
<img src="{{assetPrefix}}assets/task-tracker/actions_for_page.webp" alt="Untitled" width="1200" height="800" loading="lazy" decoding="async" />
</figure>
<p class="section__prose">
Все изменения сохраняются после ухода с вкладки и после закрытия всей страницы <strong>Tasks</strong>. Эти настройки индивидуальны и каждый сотрудник может настроить страницу как ему удобно.
@@ -212,7 +212,7 @@
Разные виды отображения одних и тех же задач могут быть полезны для разных контекстов использования страницы <strong>Tasks</strong> и также в угоду личным предпочтениям сотрудника, что повышает его эффективность. Сотрудник, которого не раздражает интерфейс работает продуктивнее и приносит больше пользы.
</p>
<figure class="case-media case-media--natural">
<img src="../assets/task-tracker/dropdown_menu_for_views.webp" alt="Untitled" width="1200" height="800" loading="lazy" decoding="async" />
<img src="{{assetPrefix}}assets/task-tracker/dropdown_menu_for_views.webp" alt="Untitled" width="1200" height="800" loading="lazy" decoding="async" />
</figure>
<aside class="case-callout" data-callout>
<span class="case-callout__emoji case-callout__emoji--pulse" aria-hidden="true">💡</span>
@@ -224,19 +224,19 @@
Вид <strong>Board</strong> позволяет удобнее работать с функцией Drag&amp;Drop (см. ниже). Также визуально легче определить кол-во задач в категории, подразумеваю что это может быть полезно. В случае использования группировки задач по статусам выполнения, перемещение карточек слева направо создаёт естественное горизонтальное течение задач из точки А в точку Б.
</p>
<figure class="case-media case-media--wide">
<img src="../assets/task-tracker/view_board.webp" alt="Untitled" width="1200" height="800" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/task-tracker/view_board.webp" alt="Untitled" width="1200" height="800" loading="lazy" decoding="async" data-image-viewer />
</figure>
<p class="section__prose">
Вид <strong>List</strong> позволяет увидеть больше информации на меньшей площади экрана. При этом этот вид визуально и функционально легче табличного вида, а значит меньше когнитивной нагрузки на пользователя. Также здесь все заголовки задач начинаются в крайнем левом положении, поэтому становится легко <em>пробежаться глазами</em> по списку.
</p>
<figure class="case-media case-media--wide">
<img src="../assets/task-tracker/view_list.webp" alt="Untitled" width="1200" height="800" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/task-tracker/view_list.webp" alt="Untitled" width="1200" height="800" loading="lazy" decoding="async" data-image-viewer />
</figure>
<p class="section__prose">
Вид <strong>Table</strong> позволяет сразу же работать со всеми полями задачи, без раскрытия её в модальном окне или отдельной странице. Таблица подразумевает пользовательскую настройку ширины и порядка столбцов, что может быть удобно в некоторых кейсах использования.
</p>
<figure class="case-media case-media--wide">
<img src="../assets/task-tracker/view_table.webp" alt="Untitled" width="1200" height="800" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/task-tracker/view_table.webp" alt="Untitled" width="1200" height="800" loading="lazy" decoding="async" data-image-viewer />
</figure>
<aside class="case-callout" data-callout>
<span class="case-callout__emoji case-callout__emoji--pulse" aria-hidden="true">💡</span>
@@ -246,9 +246,9 @@
</aside>
<figure class="case-media" style="margin: 0.85rem 0 1.2rem">
<div class="case-video-shell">
<video controls preload="metadata" playsinline poster="../assets/task-tracker/expand-collapse_group.webp" data-case-video-player style="display: block; width: 100%; height: auto; margin: 0">
<source src="../assets/task-tracker/expand-collapse_group.webm" type="video/webm" />
<source src="../assets/task-tracker/expand-collapse_group.mp4" type="video/mp4" />
<video controls preload="metadata" playsinline poster="{{assetPrefix}}assets/task-tracker/expand-collapse_group.webp" data-case-video-player style="display: block; width: 100%; height: auto; margin: 0">
<source src="{{assetPrefix}}assets/task-tracker/expand-collapse_group.webm" type="video/webm" />
<source src="{{assetPrefix}}assets/task-tracker/expand-collapse_group.mp4" type="video/mp4" />
Ваш браузер не поддерживает видео.
</video>
</div>
@@ -261,7 +261,7 @@
rel="noopener noreferrer"
>
<span class="case-link-card__media">
<img src="../assets/task-tracker/view_board.webp" alt="Превью прототипа вида Board" width="1200" height="800" loading="lazy" decoding="async" />
<img src="{{assetPrefix}}assets/task-tracker/view_board.webp" alt="Превью прототипа вида Board" width="1200" height="800" loading="lazy" decoding="async" />
</span>
<span class="case-link-card__body">
<span class="case-link-card__title">Прототип в Figma</span>
@@ -278,9 +278,9 @@
<p class="section__prose"><strong>Board view</strong></p>
<figure class="case-media" style="margin: 0.85rem 0 1.2rem">
<div class="case-video-shell">
<video controls preload="metadata" playsinline poster="../assets/task-tracker/drag-drop-item_board-view.webp" data-case-video-player style="display: block; width: 100%; height: auto; margin: 0">
<source src="../assets/task-tracker/drag-drop-item_board-view.webm" type="video/webm" />
<source src="../assets/task-tracker/drag-drop-item_board-view.mp4" type="video/mp4" />
<video controls preload="metadata" playsinline poster="{{assetPrefix}}assets/task-tracker/drag-drop-item_board-view.webp" data-case-video-player style="display: block; width: 100%; height: auto; margin: 0">
<source src="{{assetPrefix}}assets/task-tracker/drag-drop-item_board-view.webm" type="video/webm" />
<source src="{{assetPrefix}}assets/task-tracker/drag-drop-item_board-view.mp4" type="video/mp4" />
Ваш браузер не поддерживает видео.
</video>
</div>
@@ -293,7 +293,7 @@
rel="noopener noreferrer"
>
<span class="case-link-card__media" aria-hidden="true">
<img src="../assets/task-tracker/view_board.webp" alt="" width="1200" height="800" loading="lazy" decoding="async" />
<img src="{{assetPrefix}}assets/task-tracker/view_board.webp" alt="" width="1200" height="800" loading="lazy" decoding="async" />
</span>
<span class="case-link-card__body">
<span class="case-link-card__title">Прототип в Figma</span>
@@ -305,9 +305,9 @@
<p class="section__prose"><strong>List view</strong></p>
<figure class="case-media" style="margin: 0.85rem 0 1.2rem">
<div class="case-video-shell">
<video controls preload="metadata" playsinline poster="../assets/task-tracker/drag-drop-item_list-view.webp" data-case-video-player style="display: block; width: 100%; height: auto; margin: 0">
<source src="../assets/task-tracker/drag-drop-item_list-view.webm" type="video/webm" />
<source src="../assets/task-tracker/drag-drop-item_list-view.mp4" type="video/mp4" />
<video controls preload="metadata" playsinline poster="{{assetPrefix}}assets/task-tracker/drag-drop-item_list-view.webp" data-case-video-player style="display: block; width: 100%; height: auto; margin: 0">
<source src="{{assetPrefix}}assets/task-tracker/drag-drop-item_list-view.webm" type="video/webm" />
<source src="{{assetPrefix}}assets/task-tracker/drag-drop-item_list-view.mp4" type="video/mp4" />
Ваш браузер не поддерживает видео.
</video>
</div>
@@ -320,7 +320,7 @@
rel="noopener noreferrer"
>
<span class="case-link-card__media" aria-hidden="true">
<img src="../assets/task-tracker/view_list.webp" alt="" width="1200" height="800" loading="lazy" decoding="async" />
<img src="{{assetPrefix}}assets/task-tracker/view_list.webp" alt="" width="1200" height="800" loading="lazy" decoding="async" />
</span>
<span class="case-link-card__body">
<span class="case-link-card__title">Прототип в Figma</span>
@@ -335,9 +335,9 @@
</p>
<figure class="case-media" style="margin: 0.85rem 0 1.2rem">
<div class="case-video-shell">
<video controls preload="metadata" playsinline poster="../assets/task-tracker/drag-drop-action_example.webp" data-case-video-player style="display: block; width: 100%; height: auto; margin: 0">
<source src="../assets/task-tracker/drag-drop-action_example.webm" type="video/webm" />
<source src="../assets/task-tracker/drag-drop-action_example.mp4" type="video/mp4" />
<video controls preload="metadata" playsinline poster="{{assetPrefix}}assets/task-tracker/drag-drop-action_example.webp" data-case-video-player style="display: block; width: 100%; height: auto; margin: 0">
<source src="{{assetPrefix}}assets/task-tracker/drag-drop-action_example.webm" type="video/webm" />
<source src="{{assetPrefix}}assets/task-tracker/drag-drop-action_example.mp4" type="video/mp4" />
Ваш браузер не поддерживает видео.
</video>
</div>
@@ -369,7 +369,7 @@
</p>
<p class="section__prose">Светлая цветная тема</p>
<figure class="case-media case-media--wide">
<img src="../assets/task-tracker/light_theme_color.webp" alt="Светлая цветная тема" width="1200" height="800" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/task-tracker/light_theme_color.webp" alt="Светлая цветная тема" width="1200" height="800" loading="lazy" decoding="async" data-image-viewer />
</figure>
<div class="case-links-grid">
<a
@@ -390,7 +390,7 @@
</div>
<p class="section__prose">Нейтральная тёмная тема</p>
<figure class="case-media case-media--wide">
<img src="../assets/task-tracker/dark_theme.webp" alt="Нейтральная тёмная тема" width="1200" height="800" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/task-tracker/dark_theme.webp" alt="Нейтральная тёмная тема" width="1200" height="800" loading="lazy" decoding="async" data-image-viewer />
</figure>
<div class="case-links-grid">
<a
+22 -22
View File
@@ -107,7 +107,7 @@
<div class="case-links-grid">
<a class="case-link-card" href="https://www.examples.com/" target="_blank" rel="noopener noreferrer">
<span class="case-link-card__media" aria-hidden="true">
<img src="../assets/template-elements-demo/wallpaper-1.jpg" alt="" loading="lazy" decoding="async" />
<img src="{{assetPrefix}}assets/template-elements-demo/wallpaper-1.jpg" alt="" loading="lazy" decoding="async" />
</span>
<span class="case-link-card__body">
<span class="case-link-card__title">Источник с превью</span>
@@ -129,19 +129,19 @@
<h3>Картинка: 50% от оригинала (без превью)</h3>
<figure class="case-media case-media--natural">
<img src="../assets/template-elements-demo/hello.gif" alt="Демо GIF в натуральном размере" loading="lazy" decoding="async" />
<img src="{{assetPrefix}}assets/template-elements-demo/hello.gif" alt="Демо GIF в натуральном размере" loading="lazy" decoding="async" />
<figcaption>Изображение в уменьшенном натуральном размере, по центру.</figcaption>
</figure>
<h3>Картинка: по ширине контента (с превью)</h3>
<figure class="case-media case-media--content">
<img src="../assets/template-elements-demo/wallpaper-1.jpg" alt="Демо изображения по ширине контента" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/template-elements-demo/wallpaper-1.jpg" alt="Демо изображения по ширине контента" loading="lazy" decoding="async" data-image-viewer />
<figcaption>Изображение по ширине контента. Клик открывает viewer.</figcaption>
</figure>
<h3>Картинка: чуть шире контента (с превью)</h3>
<figure class="case-media case-media--wide">
<img src="../assets/template-elements-demo/wallpaper-1.jpg" alt="Демо изображения шире контента" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/template-elements-demo/wallpaper-1.jpg" alt="Демо изображения шире контента" loading="lazy" decoding="async" data-image-viewer />
<figcaption>Изображение немного выходит за пределы контентной колонки.</figcaption>
</figure>
@@ -153,7 +153,7 @@
<div class="case-media-tall" data-case-tall-root>
<div class="case-media-tall__clip" id="template-demo-tall-clip" data-case-tall-clip>
<img
src="../assets/template-elements-demo/img-long.webp"
src="{{assetPrefix}}assets/template-elements-demo/img-long.webp"
alt="Демо: длинный вертикальный скрин интерфейса"
width="1200"
loading="lazy"
@@ -186,25 +186,25 @@
<figure class="case-media case-media-gallery" style="--case-gallery-cols: 3">
<div class="case-media-gallery__grid">
<div class="case-media-gallery__item">
<img src="../assets/template-elements-demo/small-image-1.webp" alt="Демо миниатюра 1" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/template-elements-demo/small-image-1.webp" alt="Демо миниатюра 1" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="../assets/template-elements-demo/small-image-2.webp" alt="Демо миниатюра 2" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/template-elements-demo/small-image-2.webp" alt="Демо миниатюра 2" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="../assets/template-elements-demo/small-image-3.webp" alt="Демо миниатюра 3" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/template-elements-demo/small-image-3.webp" alt="Демо миниатюра 3" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="../assets/template-elements-demo/small-image-4.webp" alt="Демо миниатюра 4" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/template-elements-demo/small-image-4.webp" alt="Демо миниатюра 4" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="../assets/template-elements-demo/small-image-5.webp" alt="Демо миниатюра 5" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/template-elements-demo/small-image-5.webp" alt="Демо миниатюра 5" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="../assets/template-elements-demo/small-image-6.webp" alt="Демо миниатюра 6" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/template-elements-demo/small-image-6.webp" alt="Демо миниатюра 6" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="../assets/template-elements-demo/small-image-7.webp" alt="Демо миниатюра 7" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/template-elements-demo/small-image-7.webp" alt="Демо миниатюра 7" loading="lazy" decoding="async" data-image-viewer />
</div>
</div>
<figcaption>Сетка в колонке статьи; на этом примере три колонки на десктопе.</figcaption>
@@ -217,25 +217,25 @@
<figure class="case-media case-media-gallery case-media-gallery--wide" style="--case-gallery-cols: 2">
<div class="case-media-gallery__grid">
<div class="case-media-gallery__item">
<img src="../assets/template-elements-demo/small-image-1.webp" alt="Wide-сетка, кадр 1" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/template-elements-demo/small-image-1.webp" alt="Wide-сетка, кадр 1" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="../assets/template-elements-demo/small-image-2.webp" alt="Wide-сетка, кадр 2" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/template-elements-demo/small-image-2.webp" alt="Wide-сетка, кадр 2" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="../assets/template-elements-demo/small-image-3.webp" alt="Wide-сетка, кадр 3" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/template-elements-demo/small-image-3.webp" alt="Wide-сетка, кадр 3" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="../assets/template-elements-demo/small-image-4.webp" alt="Wide-сетка, кадр 4" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/template-elements-demo/small-image-4.webp" alt="Wide-сетка, кадр 4" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="../assets/template-elements-demo/small-image-5.webp" alt="Wide-сетка, кадр 5" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/template-elements-demo/small-image-5.webp" alt="Wide-сетка, кадр 5" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="../assets/template-elements-demo/small-image-6.webp" alt="Wide-сетка, кадр 6" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/template-elements-demo/small-image-6.webp" alt="Wide-сетка, кадр 6" loading="lazy" decoding="async" data-image-viewer />
</div>
<div class="case-media-gallery__item">
<img src="../assets/template-elements-demo/small-image-7.webp" alt="Wide-сетка, кадр 7" loading="lazy" decoding="async" data-image-viewer />
<img src="{{assetPrefix}}assets/template-elements-demo/small-image-7.webp" alt="Wide-сетка, кадр 7" loading="lazy" decoding="async" data-image-viewer />
</div>
</div>
<figcaption>Ширина как у wide-картинки; на узком экране wide-обёртка схлопывается в 100% ширины колонки (см. медиазапросы).</figcaption>
@@ -252,9 +252,9 @@
<h3>Видео: карточка с тенью и фиксированными малыми углами</h3>
<figure class="case-media" style="margin: 0.85rem 0 1.2rem">
<div class="case-video-shell">
<video controls preload="metadata" playsinline poster="../assets/template-elements-demo/video-1.webp" data-case-video-player style="display: block; width: 100%; height: auto">
<source src="../assets/template-elements-demo/video-1.webm" type="video/webm" />
<source src="../assets/template-elements-demo/video-1.mp4" type="video/mp4" />
<video controls preload="metadata" playsinline poster="{{assetPrefix}}assets/template-elements-demo/video-1.webp" data-case-video-player style="display: block; width: 100%; height: auto">
<source src="{{assetPrefix}}assets/template-elements-demo/video-1.webm" type="video/webm" />
<source src="{{assetPrefix}}assets/template-elements-demo/video-1.mp4" type="video/mp4" />
Ваш браузер не поддерживает видео.
</video>
</div>
+1 -1
View File
@@ -2,6 +2,6 @@
<div class="footer__inner">
<span class="footer__chunk footer__chunk--date">© 2026<span class="footer__sep" aria-hidden="true"> · </span></span>
<span class="footer__chunk footer__chunk--main">Дизайн и разработка сайта — Николай Мамадаев</span>
<span class="footer__chunk footer__chunk--meta footer__attr"><span class="footer__sep" aria-hidden="true"> · </span><a href="{{assetPrefix}}cases/design-system.html">Design System</a><span class="footer__sep" aria-hidden="true"> · </span><a href="{{assetPrefix}}cookie-policy.html">Политика cookie</a></span>
<span class="footer__chunk footer__chunk--meta footer__attr"><span class="footer__sep" aria-hidden="true"> · </span><a href="{{assetPrefix}}cases/design-system/">Design System</a><span class="footer__sep" aria-hidden="true"> · </span><a href="{{assetPrefix}}cookie-policy.html">Политика cookie</a></span>
</div>
</footer>
+3 -3
View File
@@ -5,7 +5,7 @@
<li class="mini-projects-grid__item" data-mp-cells="3" data-related-slug="ai-assistant">
<a
class="mp-card mp-card--link mp-card--compact"
href="{{casesPrefix}}ai-assistant-figma.html"
href="{{casesPrefix}}ai-assistant-figma/"
aria-label="AI assistant — открыть кейс"
>
<div class="mp-card__body">
@@ -20,7 +20,7 @@
<li class="mini-projects-grid__item" data-mp-cells="3" data-related-slug="card-columns">
<a
class="mp-card mp-card--link mp-card--compact"
href="{{casesPrefix}}card-columns-obsidian.html"
href="{{casesPrefix}}card-columns-obsidian/"
aria-label="Card Columns — открыть кейс"
>
<div class="mp-card__body">
@@ -35,7 +35,7 @@
<li class="mini-projects-grid__item" data-mp-cells="3" data-related-slug="site-with-ai-ide">
<a
class="mp-card mp-card--link mp-card--compact"
href="{{casesPrefix}}site-with-ai-ide.html"
href="{{casesPrefix}}site-with-ai-ide/"
aria-label="Этот сайт — открыть кейс"
>
<div class="mp-card__body">
+3 -3
View File
@@ -111,7 +111,7 @@
<li class="mini-projects-grid__item" data-mp-cells="2">
<a
class="mp-card mp-card--link mp-card--compact"
href="cases/ai-assistant-figma.html"
href="cases/ai-assistant-figma/"
aria-label="AI assistant — открыть кейс"
>
<div class="mp-card__body">
@@ -126,7 +126,7 @@
<li class="mini-projects-grid__item" data-mp-cells="2">
<a
class="mp-card mp-card--link mp-card--compact"
href="cases/card-columns-obsidian.html"
href="cases/card-columns-obsidian/"
aria-label="Card Columns — открыть кейс"
>
<div class="mp-card__body">
@@ -141,7 +141,7 @@
<li class="mini-projects-grid__item" data-mp-cells="2">
<a
class="mp-card mp-card--link mp-card--compact"
href="cases/site-with-ai-ide.html"
href="cases/site-with-ai-ide/"
aria-label="Этот сайт — открыть кейс"
>
<div class="mp-card__body">
+7 -7
View File
@@ -3,7 +3,7 @@
<h2 class="section__title">Смотрите также</h2>
<ol class="mini-projects-grid" data-mini-projects-list>
<li class="mini-projects-grid__item" data-mp-cells="3" data-related-slug="ai-platform-primo-rpa">
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}ai-platform-primo-rpa.html" aria-label="Платформа для работы с AI — открыть кейс">
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}ai-platform-primo-rpa/" aria-label="Платформа для работы с AI — открыть кейс">
<div class="mp-card__media" aria-hidden="true">
<img
class="mp-card__image"
@@ -26,7 +26,7 @@
</a>
</li>
<li class="mini-projects-grid__item" data-mp-cells="3" data-related-slug="lunacy">
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}lunacy.html" aria-label="Графический редактор Lunacy — открыть кейс">
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}lunacy/" aria-label="Графический редактор Lunacy — открыть кейс">
<div class="mp-card__media" aria-hidden="true">
<img
class="mp-card__image"
@@ -49,7 +49,7 @@
</a>
</li>
<li class="mini-projects-grid__item" data-mp-cells="3" data-related-slug="manu-game-maker" hidden>
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}manu-game-maker.html" aria-label="Игровой движок MANU — открыть кейс">
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}manu-game-maker/" aria-label="Игровой движок MANU — открыть кейс">
<div class="mp-card__media" aria-hidden="true">
<img
class="mp-card__image"
@@ -72,7 +72,7 @@
</a>
</li>
<li class="mini-projects-grid__item" data-mp-cells="3" data-related-slug="mobile-clinic-app" hidden>
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}mobile-clinic-app.html" aria-label="Мобильное приложение для сети клиник — открыть кейс">
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}mobile-clinic-app/" aria-label="Мобильное приложение для сети клиник — открыть кейс">
<div class="mp-card__media" aria-hidden="true">
<img
class="mp-card__image"
@@ -95,7 +95,7 @@
</a>
</li>
<li class="mini-projects-grid__item" data-mp-cells="3" data-related-slug="orc-automation-panel">
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}orc-automation-panel.html" aria-label="Веб-панель для оркестрации автоматизаций — открыть кейс">
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}orc-automation-panel/" aria-label="Веб-панель для оркестрации автоматизаций — открыть кейс">
<div class="mp-card__media" aria-hidden="true">
<img
class="mp-card__image"
@@ -117,7 +117,7 @@
</a>
</li>
<li class="mini-projects-grid__item" data-mp-cells="3" data-related-slug="task-distribution-concept" hidden>
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}task-distribution-concept.html" aria-label="Концепт сервиса распределения задач — открыть кейс">
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}task-distribution-concept/" aria-label="Концепт сервиса распределения задач — открыть кейс">
<div class="mp-card__media" aria-hidden="true">
<img
class="mp-card__image"
@@ -140,7 +140,7 @@
</a>
</li>
<li class="mini-projects-grid__item" data-mp-cells="3" data-related-slug="task-tracker" hidden>
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}task-tracker.html" aria-label="Таск-трекер для бек-офис системы — открыть кейс">
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}task-tracker/" aria-label="Таск-трекер для бек-офис системы — открыть кейс">
<div class="mp-card__media" aria-hidden="true">
<img
class="mp-card__image"
+7 -7
View File
@@ -3,7 +3,7 @@
<h2 class="section__title">Портфолио</h2>
<ol class="mini-projects-grid" data-mini-projects-list>
<li class="mini-projects-grid__item" data-mp-cells="2" data-related-slug="ai-platform-primo-rpa">
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}ai-platform-primo-rpa.html" aria-label="Платформа для работы с AI — открыть кейс">
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}ai-platform-primo-rpa/" aria-label="Платформа для работы с AI — открыть кейс">
<div class="mp-card__media" aria-hidden="true">
<img
class="mp-card__image"
@@ -26,7 +26,7 @@
</a>
</li>
<li class="mini-projects-grid__item" data-mp-cells="2" data-related-slug="lunacy">
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}lunacy.html" aria-label="Графический редактор Lunacy — открыть кейс">
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}lunacy/" aria-label="Графический редактор Lunacy — открыть кейс">
<div class="mp-card__media" aria-hidden="true">
<img
class="mp-card__image"
@@ -49,7 +49,7 @@
</a>
</li>
<li class="mini-projects-grid__item" data-mp-cells="2" data-related-slug="manu-game-maker" hidden>
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}manu-game-maker.html" aria-label="Игровой движок MANU — открыть кейс">
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}manu-game-maker/" aria-label="Игровой движок MANU — открыть кейс">
<div class="mp-card__media" aria-hidden="true">
<img
class="mp-card__image"
@@ -72,7 +72,7 @@
</a>
</li>
<li class="mini-projects-grid__item" data-mp-cells="2" data-related-slug="mobile-clinic-app" hidden>
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}mobile-clinic-app.html" aria-label="Мобильное приложение для сети клиник — открыть кейс">
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}mobile-clinic-app/" aria-label="Мобильное приложение для сети клиник — открыть кейс">
<div class="mp-card__media" aria-hidden="true">
<img
class="mp-card__image"
@@ -95,7 +95,7 @@
</a>
</li>
<li class="mini-projects-grid__item" data-mp-cells="2" data-related-slug="orc-automation-panel">
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}orc-automation-panel.html" aria-label="Веб-панель для оркестрации автоматизаций — открыть кейс">
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}orc-automation-panel/" aria-label="Веб-панель для оркестрации автоматизаций — открыть кейс">
<div class="mp-card__media" aria-hidden="true">
<img
class="mp-card__image"
@@ -117,7 +117,7 @@
</a>
</li>
<li class="mini-projects-grid__item" data-mp-cells="2" data-related-slug="task-distribution-concept" hidden>
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}task-distribution-concept.html" aria-label="Концепт сервиса распределения задач — открыть кейс">
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}task-distribution-concept/" aria-label="Концепт сервиса распределения задач — открыть кейс">
<div class="mp-card__media" aria-hidden="true">
<img
class="mp-card__image"
@@ -140,7 +140,7 @@
</a>
</li>
<li class="mini-projects-grid__item" data-mp-cells="2" data-related-slug="task-tracker" hidden>
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}task-tracker.html" aria-label="Таск-трекер для бек-офис системы — открыть кейс">
<a class="mp-card mp-card--link mp-card--stack" href="{{casesPrefix}}task-tracker/" aria-label="Таск-трекер для бек-офис системы — открыть кейс">
<div class="mp-card__media" aria-hidden="true">
<img
class="mp-card__image"
+8 -8
View File
@@ -16,7 +16,7 @@
<div class="projects-carousel__track">
<div class="projects-carousel__spacer" aria-hidden="true"></div>
<article class="projects-carousel__item">
<a class="portfolio-card" href="{{casesPrefix}}orc-automation-panel.html">
<a class="portfolio-card" href="{{casesPrefix}}orc-automation-panel/">
<div class="portfolio-card__body">
<h3 class="portfolio-card__title">Веб-панель для оркестрации автоматизаций</h3>
<p class="portfolio-card__summary">
@@ -42,7 +42,7 @@
</a>
</article>
<article class="projects-carousel__item">
<a class="portfolio-card" href="{{casesPrefix}}ai-platform-primo-rpa.html">
<a class="portfolio-card" href="{{casesPrefix}}ai-platform-primo-rpa/">
<div class="portfolio-card__body">
<h3 class="portfolio-card__title">Платформа для работы с AI</h3>
<p class="portfolio-card__summary">
@@ -68,7 +68,7 @@
</a>
</article>
<article class="projects-carousel__item">
<a class="portfolio-card" href="{{casesPrefix}}task-tracker.html">
<a class="portfolio-card" href="{{casesPrefix}}task-tracker/">
<div class="portfolio-card__body">
<h3 class="portfolio-card__title">Таск-трекер для бек-офис системы</h3>
<p class="portfolio-card__summary">
@@ -94,7 +94,7 @@
</a>
</article>
<article class="projects-carousel__item">
<a class="portfolio-card" href="{{casesPrefix}}manu-game-maker.html">
<a class="portfolio-card" href="{{casesPrefix}}manu-game-maker/">
<div class="portfolio-card__body">
<h3 class="portfolio-card__title">Игровой движок MANU</h3>
<p class="portfolio-card__summary">
@@ -120,7 +120,7 @@
</a>
</article>
<article class="projects-carousel__item">
<a class="portfolio-card" href="{{casesPrefix}}lunacy.html">
<a class="portfolio-card" href="{{casesPrefix}}lunacy/">
<div class="portfolio-card__body">
<h3 class="portfolio-card__title">Графический редактор Lunacy</h3>
<p class="portfolio-card__summary">
@@ -146,7 +146,7 @@
</a>
</article>
<article class="projects-carousel__item">
<a class="portfolio-card" href="{{casesPrefix}}mobile-clinic-app.html">
<a class="portfolio-card" href="{{casesPrefix}}mobile-clinic-app/">
<div class="portfolio-card__body">
<h3 class="portfolio-card__title">Мобильное приложение для сети клиник</h3>
<p class="portfolio-card__summary">
@@ -172,7 +172,7 @@
</a>
</article>
<article class="projects-carousel__item">
<a class="portfolio-card" href="{{casesPrefix}}task-distribution-concept.html">
<a class="portfolio-card" href="{{casesPrefix}}task-distribution-concept/">
<div class="portfolio-card__body">
<h3 class="portfolio-card__title">Концепт сервиса распределения задач</h3>
<p class="portfolio-card__summary">
@@ -198,7 +198,7 @@
</a>
</article>
<article class="projects-carousel__item">
<a class="portfolio-card" href="{{casesPrefix}}obsidian-plugin-columns-view.html">
<a class="portfolio-card" href="{{casesPrefix}}obsidian-plugin-columns-view/">
<div class="portfolio-card__body">
<h3 class="portfolio-card__title">Колоночный вид — плагин для Obsidian</h3>
<p class="portfolio-card__summary">