Список требований к дизайн-проекту

Опубликовано

Разработка современных цифровых продуктов предполагает системный подход, позволяющий сохранить гибкость, масштабируемость и согласованность решений. В этой статье собран список ключевых требований к дизайн-проекту, разделенный на подкатегории, которые стоит зафиксировать до начала работы, чтобы унифицировать проект и облегчить работу разработчикам.

Работа с компонентами

  • Создайте UI-кит, в которой будут иметься все элементы будущего макета: компоненты кнопок, инпутов, чекбоксов, радио, карточки, модальные окна и т.д., а также все использованные шрифты и цвета. Разработчики будут брать все элементы оттуда;
  • Используйте компоненты для консистентности. В случае, если вам понадобится поменять какое-либо свойство компонента — не забывайте делать это через родительский компонент (в UI-ките), а не дочерний, чтобы у разработчиков не возникало вопросов об итоговом варианте;
  • Используйте одинаковые компоненты для одинаковых элементов интерфейса. Например, если кнопка используется на нескольких страницах, она должна быть представлена одним компонентом, а не отдельными элементами;
  • Давайте понятные и логичные названия компонентам. Например, ‘Button / Primary / 44px" или "Card / Product’, чтобы было ясно, какой это элемент и где он используется. Кроме того, так будет удобнее найти компоненты, распределенные по папкам в фигме.
BS_logo_text_violet

Состояние элементов                                

  • В макете должны быть проработаны все состояния элементов интерфейса (например, кнопки, инпуты, свитчеры): enabled, hover, focused, pressed, disabled;                             
  • Продумайте как будут выглядеть страницы ошибок: 404, 500, — и покажите их на макете;
  • У динамических блоков и карточек покажите загрузку контента, пустой блок или ошибку. Также покажите состояние любой формы при успехе, отправке или ошибке.
BS_logo_sign_line_white

Текстовые и цветовые стили

  • Используйте четкие текстовые стили для заголовков, подзаголовков, текста кнопок и основного текста; 
  • При работе с цветовыми стилями в наименовании стиля указывайте: цвет (или где он применяется) → насыщенность цвета (через числа). Например, неправильно: blue, dark blue, light blue. Правильно: blue/100, 200, 300, 400. Либо accent/100, 200, 300, 400 (от наименее насыщенного к более насыщенному); 
  • Использование разных текстовых стилей внутри одного текстового блока усложняет работу разработчика: становится неочевидно, к каким именно словам относится тот или иной стиль. Смешивать заголовок и текст в одном контейнере — плохая идея. Даже если с текстовыми стилями еще можно разобраться, правильно определить и воспроизвести отступы в таком случае значительно сложнее.
BS_logo_full_white

Типографика и шрифты

  • Убедитесь, что все шрифты соответствуют тем, которые поддерживаются в вебе, и содержат необходимые для сайта символы (₽, отдельные буквы для иностранных языков). Если используются кастомные шрифты — сократите их количество до минимального;
  • Шрифты должны быть доступны для коммерческого использования, либо должна иметься лицензия на его использование;
  • Обеспечьте достаточный контраст для читаемости, особенно для текста;
  • Старайтесь минимизировать изменение размера шрифта у определенного блока, т.е. если текстовый блок в мобильном отображении имеет размер шрифта 16, то старайтесь сохранить 16 в десктопной версии. Шаг в 2 пикселя (16, 18, 20) особо не даст результатов.
BS_logo_full_white

Иконки и графика

  • Все иконки и графика должны быть векторными (SVG);
  • Если вы используете изображение, на которое были применены наложения в фигме, заранее экспортируйте его и загрузите в макет окончательный вариант, так как у разработчиков наложения не отображаются и картинка будет в исходном варианте; 
  • Подготовьте иконку сайта (Favicon).
BS_logo_full_white

Анимация и интерактивность 

  • Описывайте анимации (если они есть), как они будут работать: время, задержки, эффекты;
  • В случае сложных взаимодействий предоставьте видео или анимационные гифки для лучшего понимания;
  • Если есть реализованный пример на работающем сайте, то прикрепите ссылку на него комментарием.
BS_logo_full_line_white

Адаптивность и резиновость

  • Проработайте макеты для всех ключевых решений: десктоп, планшет (если в нем есть необходимость), мобильные устройства;
  • Покажите, как элементы должны адаптироваться при уменьшении или увеличении ширины экрана;
  • Используй максимум автолэйаутов и минимум брейкпойнтов. Автолэйауты фигмы очень похожи на инструмент Flexbox в CSS — разработчик закодит элемент или целый блок по тем же настройкам, как у вас в макете. Не нужно рисовать десяток брейкпойнтов каждой страницы, достаточно показать несколько размеров блока, если его поведение меняется в адаптиве. Например, перестраивается порядок элементов в блоке. Вам меньше механической работы, а разработчику не нужно искать глазами, как и что меняется среди кучи макетов.
BS_logo_full_line_white

Файловая структура и комментарии

  • Логично организуйте все слои и группы в макете. Каждые сгруппированные слои (во избежание путаницы) должны носить понятные названия и отвечать логике страницы для понимания как самим дизайнером, так и разработчиком. Никаких ‘Frame6529’; 
  • Все ненужное на макете, если это нигде не используется, нужно удалить, чтобы не сбивать разработчика с толку (да и себя тоже). Если удалять нельзя, то сделайте полупрозрачным или вынесите на отдельную страницу (например, ‘Drafts’); 
  • Добавляйте комментарии и пояснения там, где могут возникнуть вопросы. Например: «у этой карточки фиксированная высота текста, остальной текст будет скрываться в многоточие».

Место для реальных данных

Подставляйте реальные данные или длинные названия (Кременчуг-Константиновское, Верхненовокутлумбетьево, Константин Константинопольский) во избежание ломаной верстки. Если место ограничено — предложите обрезку текста с многоточием или перенос на следующую строку. Кстати, принудительные переносы слов на другую строку, поставленные в Figma (перенос через Shift+Enter или неразрывный пробел Alt+Space), разработчик не увидит или не сможет повторить в типовом компоненте.

Порядок макетов

Разработчикам будет легче, если адаптивные версии страниц будут идти всегда в одном порядке, от мобильного к десктопному, или наоборот — это уже как удобнее вам.

BS_logo_full_line_white

Автор

Куманькина Александра

Глава отдела дизайна

Предыдущая статья

vh, dvh, svh, ldvh — величины для улучшения верстки

Эта статья рассматривает использование CSS единиц svh, dvh и lvh, помогающих задать адаптивную высоту элементов в зависимости от доступного пространства экрана. Узнайте, как они работают и где их лучше применять для современного веб-дизайна.

Подробнее