Дизайн-системы часто эволюционируют, и при рефакторинге или смене технологий часть токенов (цвета, отступы, шрифты) может быть утеряна. Восстановление вручную трудоёмко и подвержено ошибкам. Однако современные веб-приложения оставляют «цифровые следы»: остаточные CSS Custom Properties и снимки DOM, сохранённые сервис-воркерами. Нейросети позволяют автоматически реконструировать дизайн-систему по этим данным.
Остаточные токены — это CSS-переменные, которые остались в коде после изменений. Они могут быть неиспользуемыми или частично применяться, но содержат информацию о прежних значениях. Снимки DOM — это сериализованные состояния DOM-дерева, включая применённые стили. Сервис-воркеры могут кэшировать такие снимки при каждом посещении страницы, создавая временной ряд.
Для извлечения данных необходимо настроить сервис-воркер на сохранение снимков DOM и таблиц стилей. Пример кода:
self.addEventListener('fetch', event => {
event.respondWith(
caches.match(event.request).then(response => {
if (response) {
// Сохраняем снимок DOM для анализа
saveDOMSnapshot(event.request.url);
return response;
}
return fetch(event.request);
})
);
});Затем снимки экспортируются в JSON и передаются нейросети.
Используются трансформеры для анализа CSS-кода и GNN для DOM-структуры. Обучение можно проводить на парах «токены → дизайн-система». Популярные фреймворки: TensorFlow, PyTorch, Hugging Face Transformers. Пример архитектуры: энкодер токенов → энкодер DOM → слияние → декодер дизайн-системы.
Допустим, в CSS остались переменные --color-primary, --color-secondary, но утеряны оттенки. Нейросеть, обученная на снимках DOM, может восстановить палитру, анализируя, как эти цвета применялись к элементам. Например, по частоте использования и соседним цветам.
Нейросетевая реконструкция дизайн-системы по остаточным токенам и снимкам DOM — перспективный подход, позволяющий автоматизировать восстановление утерянных дизайн-решений. Он экономит время и снижает риск ошибок, а также открывает возможности для анализа эволюции дизайна.







