Desktop
- Hover
- Preview
- Click
- Action
Core principle
LIM no longer designs only for screen size. It designs for the human, the device, the input method, and the surrounding context.
Interactive Human Adaptive demos (attention zone, haptics, sensors) live in lab/human-adaptive/. This Runtime chapter documents principles only.
Responsive Design adapts to the screen. Adaptive Design adapts to the device. Layered Interface Method adapts to the human.
The same user intention must be realized through different behaviors depending on input. Do not copy desktop onto mobile. Do not copy hover onto touch. Each device receives a natural interaction model.
The interface adapts not to the screen — it adapts to human reach. Critical actions move toward natural interaction zones (thumb comfort research).
Primary CTAs, navigation, and high-frequency controls belong in easy reach. Rare or destructive actions may sit farther away — never the reverse.
On touch, the hover analogue is the Attention Zone — the screen region where interaction is most probable. When a card enters that zone it may play a preview. Navigation does not fire until tap.
Lifecycle: hidden → visible → attention → engaged → activated. Only one element holds is-attention at a time.
Preview activates in attention — tap engages. No accidental navigation.
Neighbors stay calm while this card holds focus of the zone.
Focus maps to engaged — Enter maps to activated.
LIM owns selection scoring so the zone stays intentional.
Not Mouse First. Not Touch First. Input Native. Every component must document behavior for Mouse, Touch, Keyboard, Pen — and leave room for Gamepad and Voice later.
Ship the matrix with the component. If a modality is unsupported, say so — do not fake hover on touch.
Sensors may inform spatial understanding — never decoration for its own sake. Progressive enhancement only: LIM remains correct without gyroscope, vibration, or ambient light.
Reading environment…
LIM understands the surroundings as well as the user: light theme ↔ morning, dark theme ↔ night, orientation changes composition, landscape carries more information, portrait carries more air.
Tactile feedback confirms state change — it does not decorate. Components never call navigator.vibrate directly. They call semantic tokens through LIM.haptics.trigger().
LIM.haptics.trigger("selection");
// tokens: tick · selection · confirm · warning · error · boundary
Apply thoughtfully on picker, slider, switch, tabs, drag, and modal boundaries.
Every interaction is a stack: Visual → Motion → Haptic → State. Example switch: knob moves → color shifts → short tactile tick → new state is true.
Do not port desktop habits onto touch. Use what touch does well — and document where not to.
Context menus, peeks — never the only path.
Zoom / favorite when discoverable.
Reorder, scrub values.
Navigate peers, dismiss — with visible alternatives.
Lists and carousels that feel physical.
Use sparingly — never hide critical actions behind stretch.
Gestures are never the only way. Every gesture needs a visually discoverable alternative. Long press accelerates — it does not replace the button.
Modern controllers are designed around human anatomy. LIM applies the same idea to digital products: hand placement, natural zones, holding context, and how the device is gripped.
Design for Humans.
Not for Viewports.
Адаптивный дизайн подстраивается под экран. Адаптивный дизайн устройства — под устройство. Логика интерфейсных моделей подстраивается под человека.
Одно и то же намерение пользователя должно реализовываться разными поведениями в зависимости от ввода. Не копируйте компьютер на мобильный. Не копируйте наведение на тач. Каждое устройство получает естественную модель взаимодействия.
Интерфейс адаптируется не к экрану — он адаптируется к досягаемости человека. Критичные действия сдвигаются в естественные зоны взаимодействия.
Основные призывы, навигация и частые контролы — в зоне лёгкой досягаемости. Редкие или разрушительные действия могут быть дальше — никогда наоборот.
На таче аналог наведения — зона внимания: область экрана, где взаимодействие наиболее вероятно. Когда карточка входит в зону, она может показать предпросмотр. Навигация срабатывает только по касанию.
Жизненный цикл: hidden → visible → attention → engaged → activated. Только один элемент держит is-attention.
Предпросмотр в зоне внимания — касание включает. Без случайной навигации.
Соседи остаются спокойными, пока эта карточка в фокусе зоны.
Фокус соответствует engaged — Enter соответствует activated.
Метод владеет оценкой выбора, чтобы зона оставалась намеренной.
Не «сначала мышь». Не «сначала тач». Нативное проектирование взаимодействия. Каждый компонент документирует поведение для мыши, тача, клавиатуры, пера — и оставляет место для геймпада и голоса.
Поставляйте матрицу вместе с компонентом. Если модальность не поддерживается — скажите об этом. Не имитируйте наведение на таче.
Сенсоры могут усиливать пространственное понимание — никогда не быть декором ради декора. Только прогрессивное улучшение: метод остаётся корректным без гироскопа, вибрации и датчика света.
Считывание окружения…
Метод понимает окружение так же, как пользователя: светлая тема ↔ утро, тёмная ↔ ночь, ориентация меняет композицию, альбомная несёт больше информации, портретная — больше воздуха.
Тактильная обратная связь подтверждает смену состояния — она не украшает. Компоненты не вызывают navigator.vibrate напрямую. Они вызывают семантические токены через LIM.haptics.trigger().
LIM.haptics.trigger("selection");
// токены: tick · selection · confirm · warning · error · boundary
Применяйте осознанно на выборе, ползунке, тумблере, вкладках, перетаскивании и границах модальных окон.
Каждое взаимодействие — стек: визуал → движение → тактильная отдача → состояние. Пример тумблера: бегунок движется → цвет меняется → короткий тактильный сигнал → новое состояние истинно.
Не переносите привычки компьютера на тач. Используйте сильные стороны тача — и документируйте, где этого делать не стоит.
Контекстные меню, peek — никогда единственный путь.
Масштаб / избранное, если обнаруживаемо.
Переупорядочивание, точная настройка значений.
Навигация между равными, закрытие — с видимыми альтернативами.
Списки и карусели с ощущением физики.
Используйте редко — никогда не прячьте критичные действия за растяжением.
Жесты никогда не единственный способ. У каждого жеста должна быть визуально обнаруживаемая альтернатива. Долгое нажатие ускоряет — оно не заменяет кнопку.
Современные контроллеры спроектированы вокруг анатомии человека. Метод применяет ту же идею к цифровым продуктам: положение рук, естественные зоны, контекст удержания и хват устройства.
Проектируйте для людей.
Не для вьюпортов.