slidev-theme-practicum 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +270 -0
- package/components/DebugGrid.vue +50 -0
- package/components/DecorLibrary.vue +1117 -0
- package/components/Header.vue +124 -0
- package/components/Image.vue +82 -0
- package/components/ImageRenderer.vue +126 -0
- package/components/Logo.vue +142 -0
- package/components/Person.vue +89 -0
- package/components/Slide.vue +324 -0
- package/components/Slot.vue +419 -0
- package/components/Text.vue +216 -0
- package/components/Timeline.vue +202 -0
- package/composables/decor-catalog.mjs +339 -0
- package/composables/decor-config.mjs +488 -0
- package/composables/decor-file-store.ts +192 -0
- package/composables/decor-http-store.ts +25 -0
- package/composables/decor-store.ts +39 -0
- package/composables/decor-tuning-overrides.mjs +2 -0
- package/composables/decor-workbench.ts +799 -0
- package/composables/grid-placement.ts +396 -0
- package/composables/image-config.mjs +484 -0
- package/composables/layout-authoring.ts +372 -0
- package/composables/layout-markdown.mjs +56 -0
- package/composables/layout-recipes.ts +347 -0
- package/composables/layout-registry.ts +47 -0
- package/composables/layout-shorthands.ts +891 -0
- package/composables/layout-vnode.ts +43 -0
- package/composables/logo-mark.mjs +5 -0
- package/composables/slide-layout.ts +43 -0
- package/composables/slot-placement.ts +195 -0
- package/composables/slot-rules.ts +147 -0
- package/composables/text-fit-runtime.ts +577 -0
- package/composables/text-priority-fit.mjs +166 -0
- package/composables/text-typography.mjs +138 -0
- package/composables/theme-foundation.ts +192 -0
- package/composables/theme-media.mjs +202 -0
- package/composables/use-theme-config.ts +71 -0
- package/decor-library.md +10 -0
- package/env.d.ts +6 -0
- package/example.md +786 -0
- package/layouts/collection.vue +5 -0
- package/layouts/cover.vue +5 -0
- package/layouts/default.vue +5 -0
- package/layouts/explainer.vue +5 -0
- package/layouts/message.vue +5 -0
- package/layouts/none.vue +5 -0
- package/layouts/section.vue +5 -0
- package/layouts/two-cols.vue +11 -0
- package/package.json +84 -0
- package/public/decor/decor-1.svg +83 -0
- package/public/decor/decor-10.svg +40 -0
- package/public/decor/decor-11.svg +162 -0
- package/public/decor/decor-12.svg +83 -0
- package/public/decor/decor-13.svg +5 -0
- package/public/decor/decor-14.svg +7 -0
- package/public/decor/decor-15.svg +10 -0
- package/public/decor/decor-16.svg +9 -0
- package/public/decor/decor-17.png +0 -0
- package/public/decor/decor-18.png +0 -0
- package/public/decor/decor-19.svg +5 -0
- package/public/decor/decor-2.png +0 -0
- package/public/decor/decor-3.svg +9 -0
- package/public/decor/decor-4.svg +31 -0
- package/public/decor/decor-5.png +0 -0
- package/public/decor/decor-6.png +0 -0
- package/public/decor/decor-7.png +0 -0
- package/public/decor/decor-8.svg +21 -0
- package/public/decor/decor-9.svg +38 -0
- package/public/favicon.svg +11 -0
- package/public/photos/photo-1.png +0 -0
- package/public/photos/photo-10.png +0 -0
- package/public/photos/photo-2.png +0 -0
- package/public/photos/photo-3.png +0 -0
- package/public/photos/photo-4.png +0 -0
- package/public/photos/photo-5.png +0 -0
- package/public/photos/photo-6.png +0 -0
- package/public/photos/photo-7.png +0 -0
- package/public/photos/photo-8.png +0 -0
- package/public/photos/photo-9.png +0 -0
- package/setup/main.ts +3 -0
- package/setup/shiki.ts +10 -0
- package/setup/vite-plugins.ts +106 -0
- package/slidev-theme-practicum.png +0 -0
- package/slidev-theme-practicum.svg +102 -0
- package/styles/example.css +0 -0
- package/styles/index.css +192 -0
- package/styles/vars.css +119 -0
- package/types/slidev-client.d.ts +15 -0
package/example.md
ADDED
|
@@ -0,0 +1,786 @@
|
|
|
1
|
+
---
|
|
2
|
+
theme: ./
|
|
3
|
+
title: Яндекс Практикум — справочная галерея
|
|
4
|
+
layout: cover
|
|
5
|
+
variant: grid
|
|
6
|
+
mode: dark
|
|
7
|
+
tone: blue
|
|
8
|
+
themeConfig:
|
|
9
|
+
deckTitle: 'Как делать слайды в стиле Практикума'
|
|
10
|
+
debugGrid: false
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
<Slot role="primary" surface="dark" margin="4" gap="4">
|
|
14
|
+
<Text as="h1" size="7">Как делать слайды в стиле Практикума</Text>
|
|
15
|
+
<Text size="3" align="end" muted>
|
|
16
|
+
Эта колода — самопример: каждый слайд показывает свою задачу, а исходник работает как готовый шаблон для копирования.
|
|
17
|
+
</Text>
|
|
18
|
+
</Slot>
|
|
19
|
+
|
|
20
|
+
<Slot
|
|
21
|
+
role="media"
|
|
22
|
+
surface="color"
|
|
23
|
+
tone="green"
|
|
24
|
+
:decor="{ meaning: 'cover', tone: 'green', color: 'var(--theme-color-light-0)' }"
|
|
25
|
+
/>
|
|
26
|
+
|
|
27
|
+
<Slot
|
|
28
|
+
role="media"
|
|
29
|
+
surface="dark"
|
|
30
|
+
:decor="{ meaning: 'cover', tone: 'green', color: 'var(--theme-color-green-0)' }"
|
|
31
|
+
/>
|
|
32
|
+
|
|
33
|
+
<Slot
|
|
34
|
+
role="media"
|
|
35
|
+
:decor="{ meaning: 'workspace', tone: 'blue', position: '50% 10%', zoom: 1.5 }"
|
|
36
|
+
/>
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
layout: cover
|
|
40
|
+
variant: grid
|
|
41
|
+
mode: dark
|
|
42
|
+
tone: blue
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
<Slot role="primary" surface="dark" margin="4" gap="4">
|
|
46
|
+
<Text as="h1" size="7">Стандартный вход с триптихом справа</Text>
|
|
47
|
+
<Text size="3" align="end" muted>
|
|
48
|
+
Заголовок занимает левую половину, а три квадратных слота держат настроение раздела. Берите для большинства разделов: спокойно, но фирменно.
|
|
49
|
+
</Text>
|
|
50
|
+
</Slot>
|
|
51
|
+
|
|
52
|
+
<Slot
|
|
53
|
+
role="media"
|
|
54
|
+
surface="color"
|
|
55
|
+
tone="blue"
|
|
56
|
+
:decor="{ meaning: 'cover', tone: 'blue', color: 'var(--theme-color-light-0)' }"
|
|
57
|
+
/>
|
|
58
|
+
|
|
59
|
+
<Slot
|
|
60
|
+
role="media"
|
|
61
|
+
:decor="{ meaning: 'workspace', tone: 'blue', position: '50% 44%', zoom: 1.06 }"
|
|
62
|
+
/>
|
|
63
|
+
|
|
64
|
+
<Slot
|
|
65
|
+
role="media"
|
|
66
|
+
surface="dark"
|
|
67
|
+
:decor="{ meaning: 'cover', tone: 'blue', color: 'var(--theme-color-blue-0)' }"
|
|
68
|
+
/>
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
layout: cover
|
|
72
|
+
variant: grid-balanced
|
|
73
|
+
mode: light
|
|
74
|
+
tone: orange
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
<Slot role="primary" surface="dark" margin="4" gap="4">
|
|
78
|
+
<Text as="h1" size="7">Несколько равноправных опор</Text>
|
|
79
|
+
<Text size="3" align="end" muted>
|
|
80
|
+
Высота нижнего блока выровнена с двумя верхними. Используйте, когда у темы нет одной центральной картинки и важно держать ритм.
|
|
81
|
+
</Text>
|
|
82
|
+
</Slot>
|
|
83
|
+
|
|
84
|
+
<Slot
|
|
85
|
+
role="media"
|
|
86
|
+
surface="color"
|
|
87
|
+
tone="orange"
|
|
88
|
+
:decor="{ meaning: 'cover', tone: 'orange', zoom: 4, color: 'var(--theme-color-light-0)' }"
|
|
89
|
+
/>
|
|
90
|
+
|
|
91
|
+
<Slot
|
|
92
|
+
role="media"
|
|
93
|
+
:decor="{ meaning: 'home', tone: 'orange', position: '50% 0%', zoom: 1.2 }"
|
|
94
|
+
/>
|
|
95
|
+
|
|
96
|
+
<Slot
|
|
97
|
+
role="media"
|
|
98
|
+
surface="tint"
|
|
99
|
+
tone="orange"
|
|
100
|
+
:decor="{ id: 'decor-support-raster-02' }"
|
|
101
|
+
/>
|
|
102
|
+
|
|
103
|
+
---
|
|
104
|
+
layout: cover
|
|
105
|
+
variant: banner
|
|
106
|
+
mode: light
|
|
107
|
+
tone: orange
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
<Slot role="primary" surface="light" margin="4" gap="4">
|
|
111
|
+
<Text as="h1" size="7">Когда нужен широкий вход</Text>
|
|
112
|
+
<Text size="3">
|
|
113
|
+
Заголовок на полную ширину сразу заявляет тему. Внизу — три равные опоры, которые держат визуальный ритм без конкуренции с заголовком.
|
|
114
|
+
</Text>
|
|
115
|
+
</Slot>
|
|
116
|
+
|
|
117
|
+
<Slot
|
|
118
|
+
role="media"
|
|
119
|
+
surface="color"
|
|
120
|
+
tone="orange"
|
|
121
|
+
:decor="{ meaning: 'support', tone: 'orange', zoom: 1.3, color: 'var(--theme-color-light-0)' }"
|
|
122
|
+
/>
|
|
123
|
+
|
|
124
|
+
<Slot
|
|
125
|
+
role="media"
|
|
126
|
+
:decor="{ meaning: 'workspace', tone: 'blue', position: '50% 44%', zoom: 1.08 }"
|
|
127
|
+
/>
|
|
128
|
+
|
|
129
|
+
<Slot
|
|
130
|
+
role="media"
|
|
131
|
+
surface="dark"
|
|
132
|
+
:decor="{ id: 'decor-cover-vertical-01', rotate: '90deg', zoom: 1.45, color: 'var(--theme-color-orange-0)' }"
|
|
133
|
+
/>
|
|
134
|
+
|
|
135
|
+
---
|
|
136
|
+
layout: cover
|
|
137
|
+
variant: signal
|
|
138
|
+
mode: dark
|
|
139
|
+
tone: blue
|
|
140
|
+
---
|
|
141
|
+
|
|
142
|
+
<Slot role="primary" surface="light" margin="4" gap="4">
|
|
143
|
+
<Text as="h1" size="7">Сильный тезис просит контраста</Text>
|
|
144
|
+
<Text size="3" align="end" muted>
|
|
145
|
+
Слева — широкая зона текста, справа узкий тёмный столбец. Композиция останавливает внимание и задаёт темп раздела.
|
|
146
|
+
</Text>
|
|
147
|
+
</Slot>
|
|
148
|
+
|
|
149
|
+
<Slot
|
|
150
|
+
role="media"
|
|
151
|
+
surface="light"
|
|
152
|
+
:decor="{ meaning: 'signal', tone: 'blue', color: 'var(--theme-color-blue-0)' }"
|
|
153
|
+
/>
|
|
154
|
+
|
|
155
|
+
<Slot
|
|
156
|
+
role="media"
|
|
157
|
+
surface="color"
|
|
158
|
+
tone="blue"
|
|
159
|
+
:decor="{ meaning: 'support', tone: 'blue', position: '106%', zoom: 0.95, color: 'var(--theme-color-light-0)' }"
|
|
160
|
+
/>
|
|
161
|
+
|
|
162
|
+
<Slot
|
|
163
|
+
role="media"
|
|
164
|
+
:decor="{ meaning: 'outdoor', tone: 'blue', position: '52% 42%', zoom: 1.05 }"
|
|
165
|
+
/>
|
|
166
|
+
|
|
167
|
+
---
|
|
168
|
+
layout: cover
|
|
169
|
+
variant: split-media-triptych
|
|
170
|
+
mode: light
|
|
171
|
+
tone: green
|
|
172
|
+
---
|
|
173
|
+
|
|
174
|
+
<Slot role="primary" surface="dark" margin="4" gap="4">
|
|
175
|
+
<Text as="h1" size="7">Когда заголовку нужен запас воздуха</Text>
|
|
176
|
+
<Text size="3" align="end" muted>
|
|
177
|
+
Текст занимает левые две трети до восьмой колонки, а триптих справа остаётся как смысловая поддержка. Берите, когда главное — длинная формулировка.
|
|
178
|
+
</Text>
|
|
179
|
+
</Slot>
|
|
180
|
+
|
|
181
|
+
<Slot
|
|
182
|
+
role="media"
|
|
183
|
+
surface="color"
|
|
184
|
+
tone="green"
|
|
185
|
+
:decor="{ meaning: 'cover', tone: 'green', zoom: 3.5, color: 'var(--theme-color-light-0)' }"
|
|
186
|
+
/>
|
|
187
|
+
|
|
188
|
+
<Slot
|
|
189
|
+
role="media"
|
|
190
|
+
:decor="{ meaning: 'campus', tone: 'green', position: '50% 50%' }"
|
|
191
|
+
/>
|
|
192
|
+
|
|
193
|
+
<Slot
|
|
194
|
+
role="media"
|
|
195
|
+
surface="dark"
|
|
196
|
+
:decor="{ meaning: 'support', tone: 'green', zoom: 1.5, color: 'var(--theme-color-green-0)' }"
|
|
197
|
+
/>
|
|
198
|
+
|
|
199
|
+
---
|
|
200
|
+
layout: collection
|
|
201
|
+
variant: agenda
|
|
202
|
+
mode: color
|
|
203
|
+
tone: orange
|
|
204
|
+
decor:
|
|
205
|
+
meaning: agenda
|
|
206
|
+
tone: orange
|
|
207
|
+
---
|
|
208
|
+
|
|
209
|
+
# Архетипы слайдов
|
|
210
|
+
|
|
211
|
+
- Обложка — пять входов в раздел
|
|
212
|
+
- Поясняющий слайд — иерархия и опоры
|
|
213
|
+
- Сообщение — пауза, цитата, финал
|
|
214
|
+
- Коллекция — оглавление, таймлайн, метрики
|
|
215
|
+
- Большие факты — заголовок и три числа
|
|
216
|
+
- Ручная сетка — нестандартный коллаж
|
|
217
|
+
|
|
218
|
+
---
|
|
219
|
+
layout: collection
|
|
220
|
+
variant: agenda
|
|
221
|
+
mode: color
|
|
222
|
+
tone: blue
|
|
223
|
+
decor:
|
|
224
|
+
meaning: agenda
|
|
225
|
+
tone: blue
|
|
226
|
+
---
|
|
227
|
+
|
|
228
|
+
# Параметры слайда
|
|
229
|
+
|
|
230
|
+
- Фон — светлый, тёмный, цветной
|
|
231
|
+
- Пять акцентных цветов
|
|
232
|
+
- Поверхность слота — карточка внутри
|
|
233
|
+
- Поля и ритм внутри слота
|
|
234
|
+
- Декор — картинка под смысл
|
|
235
|
+
- Шапка — показать или спрятать
|
|
236
|
+
|
|
237
|
+
---
|
|
238
|
+
layout: explainer
|
|
239
|
+
variant: title-supports
|
|
240
|
+
---
|
|
241
|
+
|
|
242
|
+
# Сначала задача, потом макет
|
|
243
|
+
|
|
244
|
+
- Слайд — это смысловой кадр: один тезис, одно сравнение или одна метрика.
|
|
245
|
+
- Архетип говорит, как этот кадр устроен: например, «заголовок и три аргумента».
|
|
246
|
+
- Шаблон даёт готовые архетипы и просит выбрать форму, прежде чем писать текст.
|
|
247
|
+
|
|
248
|
+
---
|
|
249
|
+
layout: explainer
|
|
250
|
+
variant: definition
|
|
251
|
+
label: '#Определение'
|
|
252
|
+
---
|
|
253
|
+
|
|
254
|
+
# Архетип слайда
|
|
255
|
+
|
|
256
|
+
именованная схема расположения слотов внутри лейаута, под которую заранее подобран ритм текста, отступов и поверхностей
|
|
257
|
+
|
|
258
|
+
---
|
|
259
|
+
layout: explainer
|
|
260
|
+
variant: title-supports
|
|
261
|
+
---
|
|
262
|
+
|
|
263
|
+
# Заголовок и три коротких аргумента
|
|
264
|
+
|
|
265
|
+
- Самая рабочая лошадка: одна мысль слева и три аргумента справа.
|
|
266
|
+
- Поддержки приглушены, чтобы заголовок оставался главным.
|
|
267
|
+
- Берите для правил, чек-листов и кратких объяснений.
|
|
268
|
+
|
|
269
|
+
---
|
|
270
|
+
layout: explainer
|
|
271
|
+
variant: title-supports-bottom-muted
|
|
272
|
+
---
|
|
273
|
+
|
|
274
|
+
# Заголовок и две приглушённые опоры
|
|
275
|
+
|
|
276
|
+
- Контекст или ограничение: «учитывайте, что» или «работает, если».
|
|
277
|
+
- Уточнение или вывод: «поэтому» или «в итоге это даёт».
|
|
278
|
+
|
|
279
|
+
---
|
|
280
|
+
layout: explainer
|
|
281
|
+
variant: title-supports-bottom-plain
|
|
282
|
+
---
|
|
283
|
+
|
|
284
|
+
# Когда нужны два самостоятельных абзаца
|
|
285
|
+
|
|
286
|
+
- Этот вариант снимает приглушение с нижних опор. Каждый абзац читается как самостоятельный текст: его не воспринимают как «второстепенный к заголовку», а ставят рядом по весу.
|
|
287
|
+
- Берите слайд, когда тезис распадается на два независимых направления: например, «что включить» и «чего избегать», «теория» и «практика», «причина» и «следствие». Третий блок не нужен — два аргумента уже задают сильную смысловую пару.
|
|
288
|
+
|
|
289
|
+
---
|
|
290
|
+
layout: explainer
|
|
291
|
+
variant: title-body
|
|
292
|
+
---
|
|
293
|
+
|
|
294
|
+
# Когда нужен один развёрнутый текст
|
|
295
|
+
|
|
296
|
+
Этот вариант нужен, когда мысль не разбирается тремя короткими пунктами. Слева остаётся заголовок, справа можно положить несколько абзацев, список и при необходимости подытожить выводом.
|
|
297
|
+
|
|
298
|
+
- Сначала называйте контекст и почему он важен.
|
|
299
|
+
- Затем показывайте порядок рассуждения или ограничение.
|
|
300
|
+
- В конце оставляйте вывод, который готовит следующий слайд.
|
|
301
|
+
|
|
302
|
+
---
|
|
303
|
+
layout: message
|
|
304
|
+
variant: centered
|
|
305
|
+
mode: light
|
|
306
|
+
---
|
|
307
|
+
|
|
308
|
+
# Поставьте паузу: оставьте на слайде один тезис
|
|
309
|
+
|
|
310
|
+
---
|
|
311
|
+
layout: message
|
|
312
|
+
variant: quote
|
|
313
|
+
mode: light
|
|
314
|
+
person:
|
|
315
|
+
name: Константин Константинопольский
|
|
316
|
+
title: наставник
|
|
317
|
+
avatar: /photos/photo-3.png
|
|
318
|
+
avatar-position: '50% 38%'
|
|
319
|
+
avatar-zoom: 1.04
|
|
320
|
+
---
|
|
321
|
+
|
|
322
|
+
> Цитата работает, когда внешний голос усиливает тезис.
|
|
323
|
+
|
|
324
|
+
---
|
|
325
|
+
layout: collection
|
|
326
|
+
variant: agenda
|
|
327
|
+
mode: color
|
|
328
|
+
tone: green
|
|
329
|
+
decor:
|
|
330
|
+
meaning: agenda
|
|
331
|
+
tone: green
|
|
332
|
+
---
|
|
333
|
+
|
|
334
|
+
# Слайд-агенда
|
|
335
|
+
|
|
336
|
+
- Задаёт тему
|
|
337
|
+
- Ведёт по шагам
|
|
338
|
+
- До 7 пунктов
|
|
339
|
+
|
|
340
|
+
---
|
|
341
|
+
layout: collection
|
|
342
|
+
variant: timeline
|
|
343
|
+
items:
|
|
344
|
+
- year: '2021'
|
|
345
|
+
body: Самая первая версия шаблонов
|
|
346
|
+
- year: '2024'
|
|
347
|
+
body: Текущая графическая система
|
|
348
|
+
- year: '2026'
|
|
349
|
+
body: Slidev-шаблоны для использования с ИИ
|
|
350
|
+
active: true
|
|
351
|
+
---
|
|
352
|
+
|
|
353
|
+
# Эволюция шаблона
|
|
354
|
+
|
|
355
|
+
Подсветка одной даты подсказывает, где мы сейчас, остальные годы остаются спокойным контекстом
|
|
356
|
+
|
|
357
|
+
---
|
|
358
|
+
layout: collection
|
|
359
|
+
variant: timeline
|
|
360
|
+
items:
|
|
361
|
+
- year: 'март'
|
|
362
|
+
body: Согласовать задачу курса
|
|
363
|
+
- year: 'апрель'
|
|
364
|
+
body: Собрать черновик модулей
|
|
365
|
+
- year: 'май'
|
|
366
|
+
body: Проверить темп на занятии
|
|
367
|
+
- year: 'июнь'
|
|
368
|
+
body: Подготовить повторное использование
|
|
369
|
+
---
|
|
370
|
+
|
|
371
|
+
# План подготовки курса
|
|
372
|
+
|
|
373
|
+
Когда подсветки нет, все шаги читаются как равноценные — это календарный маршрут, а не «мы здесь»
|
|
374
|
+
|
|
375
|
+
---
|
|
376
|
+
layout: collection
|
|
377
|
+
variant: points
|
|
378
|
+
arrangement: trio
|
|
379
|
+
tone: green
|
|
380
|
+
decor:
|
|
381
|
+
meaning: rules
|
|
382
|
+
tone: green
|
|
383
|
+
fit: contain
|
|
384
|
+
position: right top
|
|
385
|
+
anchor: right top
|
|
386
|
+
x: 20%
|
|
387
|
+
y: 20%
|
|
388
|
+
zoom: 2.6
|
|
389
|
+
---
|
|
390
|
+
|
|
391
|
+
# Зелёный тон: подтверждение
|
|
392
|
+
|
|
393
|
+
1. Показывайте готовность, прогресс или безопасный статус
|
|
394
|
+
2. Держите формулировки спокойными
|
|
395
|
+
3. Не используйте зелёный для тревожных сообщений
|
|
396
|
+
|
|
397
|
+
---
|
|
398
|
+
layout: collection
|
|
399
|
+
variant: points
|
|
400
|
+
arrangement: trio
|
|
401
|
+
tone: blue
|
|
402
|
+
decor:
|
|
403
|
+
meaning: rules
|
|
404
|
+
tone: blue
|
|
405
|
+
fit: contain
|
|
406
|
+
position: right top
|
|
407
|
+
anchor: right top
|
|
408
|
+
x: 20%
|
|
409
|
+
y: 20%
|
|
410
|
+
zoom: 2.6
|
|
411
|
+
---
|
|
412
|
+
|
|
413
|
+
# Синий тон: рабочий процесс
|
|
414
|
+
|
|
415
|
+
1. Объясняйте маршруты, инструкции и нейтральные состояния
|
|
416
|
+
2. Помогайте сравнивать варианты без давления
|
|
417
|
+
3. Сохраняйте цвет как фон для чтения
|
|
418
|
+
|
|
419
|
+
---
|
|
420
|
+
layout: collection
|
|
421
|
+
variant: points
|
|
422
|
+
arrangement: trio
|
|
423
|
+
tone: orange
|
|
424
|
+
decor:
|
|
425
|
+
meaning: rules
|
|
426
|
+
tone: orange
|
|
427
|
+
fit: contain
|
|
428
|
+
position: right top
|
|
429
|
+
anchor: right top
|
|
430
|
+
x: 20%
|
|
431
|
+
y: 20%
|
|
432
|
+
zoom: 2.6
|
|
433
|
+
---
|
|
434
|
+
|
|
435
|
+
# Оранжевый тон: акцент
|
|
436
|
+
|
|
437
|
+
1. Выносите важный поворот или предупреждение
|
|
438
|
+
2. Не окрашивайте им весь ряд одинаковых фактов
|
|
439
|
+
3. Оставляйте рядом достаточно воздуха
|
|
440
|
+
|
|
441
|
+
---
|
|
442
|
+
layout: collection
|
|
443
|
+
variant: metrics
|
|
444
|
+
arrangement: featured-media
|
|
445
|
+
decor:
|
|
446
|
+
id: decor-rules-wide-01
|
|
447
|
+
opacity: 0.85
|
|
448
|
+
media:
|
|
449
|
+
src: /photos/photo-5.png
|
|
450
|
+
fit: cover
|
|
451
|
+
position: '48% 44%'
|
|
452
|
+
zoom: 1.08
|
|
453
|
+
metrics:
|
|
454
|
+
- value: '64%'
|
|
455
|
+
body: главная метрика читается крупно как вывод
|
|
456
|
+
featured: true
|
|
457
|
+
- value: '18'
|
|
458
|
+
body: вторая метрика даёт масштаб
|
|
459
|
+
- value: '5'
|
|
460
|
+
body: третья метрика подтверждает охват
|
|
461
|
+
---
|
|
462
|
+
|
|
463
|
+
---
|
|
464
|
+
layout: collection
|
|
465
|
+
variant: metrics
|
|
466
|
+
arrangement: featured-copy
|
|
467
|
+
media:
|
|
468
|
+
src: /photos/photo-5.png
|
|
469
|
+
fit: cover
|
|
470
|
+
position: '48% 44%'
|
|
471
|
+
zoom: 1.08
|
|
472
|
+
metrics:
|
|
473
|
+
- value: '60%'
|
|
474
|
+
body: главное число живёт во всю ширину карточки
|
|
475
|
+
featured: true
|
|
476
|
+
- value: '24%'
|
|
477
|
+
body: контекст уходит вниз
|
|
478
|
+
- value: '16%'
|
|
479
|
+
body: деталь занимает минимум места
|
|
480
|
+
---
|
|
481
|
+
|
|
482
|
+
---
|
|
483
|
+
layout: collection
|
|
484
|
+
variant: metrics
|
|
485
|
+
arrangement: featured-copy-split-media
|
|
486
|
+
media:
|
|
487
|
+
- src: /photos/photo-5.png
|
|
488
|
+
fit: cover
|
|
489
|
+
position: '48% 44%'
|
|
490
|
+
zoom: 1.08
|
|
491
|
+
- src: /photos/photo-6.png
|
|
492
|
+
fit: cover
|
|
493
|
+
position: '50% 40%'
|
|
494
|
+
zoom: 1.04
|
|
495
|
+
---
|
|
496
|
+
|
|
497
|
+
- ×2
|
|
498
|
+
- две фотографии бок о бок усиливают «до и после»
|
|
499
|
+
- 18
|
|
500
|
+
- минут до подсказок
|
|
501
|
+
- 9
|
|
502
|
+
- минут после подсказок
|
|
503
|
+
|
|
504
|
+
---
|
|
505
|
+
layout: collection
|
|
506
|
+
variant: facts-stacked
|
|
507
|
+
mode: dark
|
|
508
|
+
---
|
|
509
|
+
|
|
510
|
+
# Три факта как вертикальная опора
|
|
511
|
+
|
|
512
|
+
Когда нужно отступить от равных карточек, этот архетип собирает заголовок и три факта без ручных координат.
|
|
513
|
+
|
|
514
|
+
- 33%
|
|
515
|
+
- отдано каждому из чисел
|
|
516
|
+
- 4
|
|
517
|
+
- уровня иерархии размеров текста
|
|
518
|
+
- иногда
|
|
519
|
+
- факты могут быть короткими словами
|
|
520
|
+
|
|
521
|
+
---
|
|
522
|
+
layout: collection
|
|
523
|
+
variant: facts-trio
|
|
524
|
+
mode: light
|
|
525
|
+
tone: blue
|
|
526
|
+
---
|
|
527
|
+
|
|
528
|
+
# Заголовок поддержанный тремя одноранговыми фактами
|
|
529
|
+
|
|
530
|
+
Берите этот вариант, когда тезис подкрепляется тремя сопоставимыми числами и важна равная значимость
|
|
531
|
+
|
|
532
|
+
- 33%
|
|
533
|
+
- отдано каждому из чисел
|
|
534
|
+
- 4
|
|
535
|
+
- уровня иерархии размеров текста
|
|
536
|
+
- иногда
|
|
537
|
+
- факты могут быть короткими словами
|
|
538
|
+
|
|
539
|
+
---
|
|
540
|
+
layout: collection
|
|
541
|
+
variant: facts-featured
|
|
542
|
+
mode: light
|
|
543
|
+
tone: blue
|
|
544
|
+
---
|
|
545
|
+
|
|
546
|
+
# Главное число и две поддержки
|
|
547
|
+
|
|
548
|
+
Когда один факт несёт основную нагрузку, отдайте ему половину слайда — мелкие подтверждения уйдут к правому краю
|
|
549
|
+
|
|
550
|
+
- 50%
|
|
551
|
+
- отдано главному числу
|
|
552
|
+
- 25%
|
|
553
|
+
- каждому вспомогательному факту, возможно с более длинным описанием
|
|
554
|
+
- 2
|
|
555
|
+
- вспомогательных факта
|
|
556
|
+
|
|
557
|
+
---
|
|
558
|
+
layout: explainer
|
|
559
|
+
variant: title-supports
|
|
560
|
+
mode: light
|
|
561
|
+
---
|
|
562
|
+
|
|
563
|
+
# Один текстовый слайд держит один вывод
|
|
564
|
+
|
|
565
|
+
- Заголовок формулирует мысль, которую зритель должен унести.
|
|
566
|
+
- Поддерживающий текст раскрывает только эту мысль, без второй темы внутри.
|
|
567
|
+
- Цвета и декор объясняйте на слайдах, где они действительно видны.
|
|
568
|
+
|
|
569
|
+
---
|
|
570
|
+
layout: none
|
|
571
|
+
mode: light
|
|
572
|
+
header: default
|
|
573
|
+
---
|
|
574
|
+
|
|
575
|
+
<Slot area="2 / 1 / 6 / -1" gap="2">
|
|
576
|
+
<Text size="6">Акцентный цвет — пять настроений</Text>
|
|
577
|
+
<Text size="3" muted>
|
|
578
|
+
Цвета фона и акцента работают независимо: можно держать графитовый фон с синими акцентами или красить весь слайд в выбранный цвет.
|
|
579
|
+
</Text>
|
|
580
|
+
</Slot>
|
|
581
|
+
|
|
582
|
+
<Slot area="6 / 1 / 9 / 5" surface="color" tone="blue" margin="3">
|
|
583
|
+
<Text size="4">1</Text>
|
|
584
|
+
<Text size="4" align="end">синий</Text>
|
|
585
|
+
</Slot>
|
|
586
|
+
|
|
587
|
+
<Slot area="6 / 5 / 9 / 9" surface="color" tone="orange" margin="3">
|
|
588
|
+
<Text size="4">2</Text>
|
|
589
|
+
<Text size="4" align="end">оранжевый</Text>
|
|
590
|
+
</Slot>
|
|
591
|
+
|
|
592
|
+
<Slot area="6 / 9 / 9 / -1" surface="color" tone="green" margin="3">
|
|
593
|
+
<Text size="4">3</Text>
|
|
594
|
+
<Text size="4" align="end">зелёный</Text>
|
|
595
|
+
</Slot>
|
|
596
|
+
|
|
597
|
+
<Slot area="9 / 1 / -1 / 7" surface="color" tone="red" margin="3">
|
|
598
|
+
<Text size="4">4</Text>
|
|
599
|
+
<Text size="4" align="end">красный</Text>
|
|
600
|
+
</Slot>
|
|
601
|
+
|
|
602
|
+
<Slot area="9 / 7 / -1 / -1" surface="color" tone="yellow" margin="3">
|
|
603
|
+
<Text size="4">5</Text>
|
|
604
|
+
<Text size="4" align="end">жёлтый</Text>
|
|
605
|
+
</Slot>
|
|
606
|
+
|
|
607
|
+
---
|
|
608
|
+
layout: none
|
|
609
|
+
mode: light
|
|
610
|
+
header: default
|
|
611
|
+
---
|
|
612
|
+
|
|
613
|
+
<Slot area="2 / 1 / 6 / 7" surface="light" margin="4" gap="2">
|
|
614
|
+
<Text size="5">Светлая поверхность</Text>
|
|
615
|
+
<Text size="3">Нейтральная карточка: на тёмном слайде или в составной композиции держит спокойный тон.</Text>
|
|
616
|
+
</Slot>
|
|
617
|
+
|
|
618
|
+
<Slot area="2 / 7 / 6 / -1" surface="dark" margin="4" gap="2">
|
|
619
|
+
<Text size="5">Тёмная поверхность</Text>
|
|
620
|
+
<Text size="3" muted>Добавляет вес и держит контраст внутри светлого слайда.</Text>
|
|
621
|
+
</Slot>
|
|
622
|
+
|
|
623
|
+
<Slot area="6 / 1 / -1 / 7" surface="color" tone="orange" margin="4" gap="2">
|
|
624
|
+
<Text size="5">Цветная поверхность</Text>
|
|
625
|
+
<Text size="3">Слот целиком красится в текущий акцентный цвет — для смыслового выделения.</Text>
|
|
626
|
+
</Slot>
|
|
627
|
+
|
|
628
|
+
<Slot area="6 / 7 / -1 / -1" surface="tint" tone="blue" margin="4" gap="2">
|
|
629
|
+
<Text size="5">Приглушённый оттенок</Text>
|
|
630
|
+
<Text size="3">Бледная подложка под цвет акцента: читается как намёк, а не как акцент.</Text>
|
|
631
|
+
</Slot>
|
|
632
|
+
|
|
633
|
+
---
|
|
634
|
+
layout: explainer
|
|
635
|
+
variant: title-body
|
|
636
|
+
---
|
|
637
|
+
|
|
638
|
+
# Текстовый блок объясняет один контракт
|
|
639
|
+
|
|
640
|
+
Если слайд построен только на тексте, весь правый блок должен разбирать одну форму: что автор пишет в исходнике, как это читается и где заканчивается паттерн.
|
|
641
|
+
|
|
642
|
+
- Заголовок называет форму.
|
|
643
|
+
- Абзац раскрывает критерий выбора.
|
|
644
|
+
- Список фиксирует правила, а не новую тему.
|
|
645
|
+
|
|
646
|
+
---
|
|
647
|
+
layout: none
|
|
648
|
+
mode: light
|
|
649
|
+
header: default
|
|
650
|
+
---
|
|
651
|
+
|
|
652
|
+
<Slot area="2 / 1 / 5 / -1" gap="2">
|
|
653
|
+
<Text size="6">Один и тот же цвет, разный смысл</Text>
|
|
654
|
+
<Text size="3" muted>
|
|
655
|
+
Размер и тон у слотов одинаковые, а смысл — разный. Каталог достаёт из своих веток разные картинки и слоты получают совсем непохожие изображения.
|
|
656
|
+
</Text>
|
|
657
|
+
</Slot>
|
|
658
|
+
|
|
659
|
+
<Slot
|
|
660
|
+
area="5 / 1 / 11 / 7"
|
|
661
|
+
surface="light"
|
|
662
|
+
:decor="{ meaning: 'workspace', tone: 'blue' }"
|
|
663
|
+
/>
|
|
664
|
+
|
|
665
|
+
<Slot
|
|
666
|
+
area="5 / 7 / 11 / -1"
|
|
667
|
+
surface="light"
|
|
668
|
+
:decor="{ meaning: 'home', tone: 'blue' }"
|
|
669
|
+
/>
|
|
670
|
+
|
|
671
|
+
<Slot area="11 / 1 / -1 / 7" margin-top="2">
|
|
672
|
+
<Text size="3" muted>смысл: рабочее место</Text>
|
|
673
|
+
</Slot>
|
|
674
|
+
|
|
675
|
+
<Slot area="11 / 7 / -1 / -1" margin-top="2">
|
|
676
|
+
<Text size="3" muted>смысл: дом</Text>
|
|
677
|
+
</Slot>
|
|
678
|
+
|
|
679
|
+
---
|
|
680
|
+
layout: none
|
|
681
|
+
mode: light
|
|
682
|
+
header: default
|
|
683
|
+
---
|
|
684
|
+
|
|
685
|
+
<Slot area="2 / 1 / 5 / -1" gap="2">
|
|
686
|
+
<Text size="6">Один смысл, разные настроения цвета</Text>
|
|
687
|
+
<Text size="3" muted>
|
|
688
|
+
Все три слота просят картинку «поддержка», а различается только цвет настроения. Каталог уводит в разные ветки: меняется и сам кадр, и его акцент.
|
|
689
|
+
</Text>
|
|
690
|
+
</Slot>
|
|
691
|
+
|
|
692
|
+
<Slot
|
|
693
|
+
area="5 / 1 / 11 / 5"
|
|
694
|
+
surface="tint"
|
|
695
|
+
tone="blue"
|
|
696
|
+
:decor="{ meaning: 'support', tone: 'blue', color: 'var(--theme-color-blue-0)', opacity: 0.72 }"
|
|
697
|
+
/>
|
|
698
|
+
|
|
699
|
+
<Slot
|
|
700
|
+
area="5 / 5 / 11 / 9"
|
|
701
|
+
surface="tint"
|
|
702
|
+
tone="orange"
|
|
703
|
+
:decor="{ meaning: 'support', tone: 'orange', opacity: 0.9 }"
|
|
704
|
+
/>
|
|
705
|
+
|
|
706
|
+
<Slot
|
|
707
|
+
area="5 / 9 / 11 / -1"
|
|
708
|
+
surface="tint"
|
|
709
|
+
tone="green"
|
|
710
|
+
:decor="{ meaning: 'support', tone: 'green', color: 'var(--theme-color-green-0)', opacity: 0.72 }"
|
|
711
|
+
/>
|
|
712
|
+
|
|
713
|
+
<Slot area="11 / 1 / -1 / 5" margin-top="2">
|
|
714
|
+
<Text size="3" muted>цвет: синий</Text>
|
|
715
|
+
</Slot>
|
|
716
|
+
|
|
717
|
+
<Slot area="11 / 5 / -1 / 9" margin-top="2">
|
|
718
|
+
<Text size="3" muted>цвет: оранжевый</Text>
|
|
719
|
+
</Slot>
|
|
720
|
+
|
|
721
|
+
<Slot area="11 / 9 / -1 / -1" margin-top="2">
|
|
722
|
+
<Text size="3" muted>цвет: зелёный</Text>
|
|
723
|
+
</Slot>
|
|
724
|
+
|
|
725
|
+
---
|
|
726
|
+
layout: explainer
|
|
727
|
+
variant: title-supports
|
|
728
|
+
---
|
|
729
|
+
|
|
730
|
+
# Когда нужен предсказуемый результат
|
|
731
|
+
|
|
732
|
+
- Закрепите конкретную картинку — и слайд всегда получит её, без сюрпризов от автоподбора.
|
|
733
|
+
- Свои картинки регистрируйте в каталоге темы: у каждой записи указан смысл и подходящие цвета.
|
|
734
|
+
- Если важно настроение, а не точный кадр — оставляйте автоподбор, он именно под это и сделан.
|
|
735
|
+
|
|
736
|
+
---
|
|
737
|
+
layout: explainer
|
|
738
|
+
variant: title-body
|
|
739
|
+
---
|
|
740
|
+
|
|
741
|
+
# Когда нужна ручная сетка
|
|
742
|
+
|
|
743
|
+
Если задача не укладывается ни в один типовой архетип, переходите на ручную сетку. Слайд даёт вам чистые 12 колонок и шапку, а решения о расположении вы принимаете сами.
|
|
744
|
+
|
|
745
|
+
- Каждому слоту дайте координаты в сетке — четыре числа от строки и колонки до их пары.
|
|
746
|
+
- В ручной сетке нет ролей — слоты различаются только координатами.
|
|
747
|
+
- Поверхности, поля и декор у слотов работают точно так же, как в готовых архетипах.
|
|
748
|
+
|
|
749
|
+
---
|
|
750
|
+
layout: none
|
|
751
|
+
mode: light
|
|
752
|
+
header: default
|
|
753
|
+
---
|
|
754
|
+
|
|
755
|
+
<Slot area="1 / 1 / 7 / 7" surface="light" margin="4">
|
|
756
|
+
<Text size="6-7">Нестандартный коллаж</Text>
|
|
757
|
+
</Slot>
|
|
758
|
+
|
|
759
|
+
<Slot area="1 / 7 / 7 / -1" surface="light" margin="4">
|
|
760
|
+
<Text size="5">Когда типовой слайд не выдерживает смысловую задачу, собирайте композицию из слотов вручную</Text>
|
|
761
|
+
</Slot>
|
|
762
|
+
|
|
763
|
+
<Slot area="7 / 1 / -1 / 7" surface="light" margin="4">
|
|
764
|
+
<Text size="2-3">
|
|
765
|
+
Текст, цвет и декоративное фото держат один визуальный тон. Главное — не смешивать архетипы внутри одного слайда.
|
|
766
|
+
</Text>
|
|
767
|
+
</Slot>
|
|
768
|
+
|
|
769
|
+
<Slot area="7 / 7 / -1 / 10" surface="light">
|
|
770
|
+
<Image src="/photos/photo-5.png" fit="cover" position="52% 40%" zoom="1.08" />
|
|
771
|
+
</Slot>
|
|
772
|
+
|
|
773
|
+
<Slot area="7 / 10 / -1 / -1" surface="color" tone="blue" margin="3" gap="2">
|
|
774
|
+
<Text size="4-7">Связка</Text>
|
|
775
|
+
<Text size="2-6" priority="2" muted>между текстом, цветом и декором</Text>
|
|
776
|
+
</Slot>
|
|
777
|
+
|
|
778
|
+
---
|
|
779
|
+
layout: message
|
|
780
|
+
variant: closing
|
|
781
|
+
mode: dark
|
|
782
|
+
tone: blue
|
|
783
|
+
logo: full
|
|
784
|
+
---
|
|
785
|
+
|
|
786
|
+
# Делайте меньше, но точнее
|