Виджеты аналитика.
Карточки, из которых MI Analyst собирает canvas ответа. Семь типов — KPI, график, таблица, сравнение, SQL, источники, инсайт. Один скелет на все (header + body + footer с уверенностью), разный body. Только dark surface.
01. Анатомия
Любой виджет — карточка #18181B, border #27272A, radius 12, padding 16. Сверху header (заголовок слева, источник справа),
в центре body (зависит от типа), снизу необязательный footer — confidence bar + источник данных.
02. KPI
Большое число + подпись + дельта. Когда нужно поставить точку на одном факте.
03. График
Столбцы для сравнения категорий, линия / area для временного ряда. Никаких pie и 3D.
04. Таблица
Когда нужен компактный ranking или список значений: топ-конкуренты, ТОП-N запросов. До 10 строк. Больше — уходить в полную таблицу.
| Игрок | Страна | ARR |
|---|---|---|
| Personio | DE | €890M |
| Factorial | ES | €140M |
| HR Works | DE | €42M |
| OnApply | NL | €28M |
| Charlie HR | UK | €19M |
| Kombo | DE | €11M |
| Lano | DE | €8M |
05. Сравнение
Матрица «фичи × игроки» с yes / no / средне. Когда вопрос — «у кого что есть».
| Personio | Factorial | HR Works | OnApply | |
|---|---|---|---|---|
| Multipost (10+ JB) | ✓ | ✓ | ~ | ✓ |
| AI-скрининг резюме | ✓ | ~ | — | ✓ |
| Видео-интервью in-app | — | — | ✓ | — |
| Интеграция с 1С | — | — | — | — |
| DPA EU-резидентность | ✓ | ✓ | ✓ | ~ |
06. SQL-блок
Когда агент сходил в БД — виден запрос. Прозрачность = доверие. Можно скопировать, запустить ещё раз, открыть в редакторе.
-- cohort_retention.sql SELECT date_trunc('month', signup_at) AS cohort, count(DISTINCT user_id) AS users, round(100.0 * sum(active_m3) / count(*), 1) AS retention_m3 FROM users WHERE signup_at >= '2024-01-01' GROUP BY 1 ORDER BY 1;
07. Источники
Откуда модель взяла данные. Каждый элемент — название + meta (тип, дата, объём). Кликабельно в полный источник.
- Eurostat — статистика занятости DACH
- Crunchbase — раунды HR-tech
- Личный блог Hannes Personio
- Отчёт PwC HR Tech Outlook
- Внутренняя БД клиентов
08. Инсайт / риск
Текстовый вывод модели — не факт, а интерпретация. Иконка слева задаёт тон: нейтральный инсайт, риск, возможность.
DACH ≠ DACH
Австрия и Швейцария требуют отдельных DPA и разных каналов sales. Германия — 76% TAM, начинать стоит с неё.
GDPR — блокер
DPA с EU-резидентностью обязательна до запуска. Срок оформления — 6–8 недель. Без неё первый клиент в DACH невозможен.
Слабое место Personio
Нет интеграции 1С и продуктов для sub-100 FTE сегмента в DACH — окно для нишевой подачи.
NL — пилотный рынок
21% TAM, но 92% компаний с англоязычным интерфейсом готовы. Идеален для тест-запуска без локализации.
09. Loading
Пока виджет формируется — skeleton того же размера, что ожидаемый контент. Без спиннера в центре карточки.
Правила
Когда какой виджет
| Один факт | KPI. «Размер рынка — €2.4 млрд». Точка. |
| 2–4 связанных факта | KPI split. Две колонки в одной карточке. |
| Сравнение категорий | Bars. До 8 столбцов. |
| Временной ряд | Line / area. Если 1 серия — area, 2+ — line. |
| Ranking до 10 | Table. Имя слева, число справа, tabular-nums. |
| «У кого что есть» | Matrix. Фичи строками, игроки колонками. ✓ / — / ~. |
| SQL/инструмент | SQL-блок. Виден запрос — виден способ ответа. |
| Перечень источников | Sources. Финал ответа, не каждой карточки. |
| Интерпретация / вывод | Insight. Нейтрально (●), риск (▲), возможность (↗). |
Do / Don't
Токены
| Widget bg | #18181B | Card surface |
| Widget border | #27272A | 1px solid |
| Widget radius | 12px | Одинаково для всех типов |
| Widget padding | 16px | Одинаково |
| Title | 0.875rem, 600 | Heading font |
| Source caps | 0.6875rem, mono | color #71717A, uppercase |
| KPI value | 2.5rem, 800 | tabular-nums, letter-spacing −0.025em |
| Bars height | 100px | В широком виджете — 110px |
| Line height | 110px | SVG viewBox 280×110 |
| Footer border | 1px solid #27272A | border-top |
| Confidence colors | #16A34A / #C2410C | ok / warn (< 50%) |
| Insight accent | blue / red / green | тень 15% alpha + текст 100% |