FocusBoard — это локальный frontend-only продукт для поддержки принятия решений. Он помогает превратить расплывчатый вопрос в понятную структуру: краткую сводку, набор вариантов, компромиссы, риски, рекомендацию и финальное решение.
Проект задуман как спокойный, объяснимый и правдоподобный инструмент, а не как очередной "умный" интерфейс, который внезапно всё перестраивает за пользователя.
FocusBoard решает простую, но частую проблему: сложные решения редко начинаются с ясной формулировки. Обычно у пользователя есть:
- слишком много контекста
- несколько конкурирующих направлений
- неочевидные критерии выбора
- ощущение перегруза уже на старте
Обычные заметки не помогают удержать структуру, а многие "AI-first" интерфейсы либо слишком шумные, либо ведут себя непрозрачно. FocusBoard идёт в другую сторону:
- держит интерфейс стабильным
- помогает пользователю увидеть ход мысли
- предлагает маленькие и обратимые подсказки
- не пытается автоматизировать само решение
Цель продукта не в том, чтобы решить за человека. Цель в том, чтобы сделать его собственное решение более ясным, аргументированным и уверенным.
FocusBoard хорошо подходит для сценариев, где нужно не просто записать мысли, а аккуратно пройти путь от вопроса к выбору:
- продуктовые и стратегические решения
- сравнение нескольких направлений развития
- карьерные и профессиональные выборы
- UX-ревью и оценка редизайна
- разбор длинных AI-ответов перед финальной формулировкой
Продукт даёт пользователю три вещи:
- Структуру: вопрос превращается в набор понятных секций и опорных артефактов.
- Спокойствие: интерфейс не дёргается и не ломает контекст в критичный момент.
- Объяснимость: любые адаптивные подсказки прозрачны и обратимы.
FocusBoard можно описать как explainable decision-support workspace:
- не менеджер задач
- не чат
- не дашборд ради дашборда
- не opaque AI-автоматизация
Это рабочее пространство для вдумчивого решения, где адаптация помогает, но не перехватывает контроль.
Пользователь начинает с брифа:
- название решения
- главный вопрос
- приоритеты
- ограничения
- желаемый формат результата
Для быстрого старта есть несколько seeded-шаблонов с правдоподобными сценариями:
- продуктовая стратегия
- карьерное решение
- UX-ревью
- сравнение вариантов
- открытое исследование
Рабочее пространство разбито на три зоны:
- слева — бриф и контекст
- по центру — анализ: сводка, инсайты, варианты, компромиссы, риски, рекомендация, заметки
- справа — панель решения, шорт-лист, обоснование и следующий шаг
Интерфейс намеренно остаётся предсказуемым. Пользователь всегда понимает:
- где находится
- на каком этапе находится решение
- какой следующий осмысленный шаг
FocusBoard не использует ML-модель, бэкенд или скрытую магию. Вместо этого продукт отслеживает несколько лёгких сигналов поведения:
- всплески скролла
- время внимания к секциям
- повторные открытия блоков
- действия сравнения
- редактирование заметок
- смену настроек макета
На основе этих сигналов система предлагает детерминированные подсказки:
- закрепить инсайты
- включить компактную плотность
- открыть режим сравнения
- свернуть второстепенные детали
- подсветить критерии
- зафиксировать компоновку
- поднять рекомендацию выше
- собрать итог по решению
Ключевой принцип: поведение влияет на рекомендации, а не на хаотическое автоперестроение интерфейса.
Когда решение собрано, пользователь переходит в итоговое представление, где видит:
- краткий итог
- финальное решение
- обоснование
- следующий шаг
- историю подсказок
- сохранённые предпочтения рабочего пространства
- замеченные поведенческие паттерны
Это делает проект похожим не просто на UI-эксперимент, а на продукт с законченным пользовательским циклом.
- Стабильность прежде всего. Интерфейс не должен неожиданно отнимать контроль.
- Подсказки, а не сюрпризы. Адаптация предлагает действия, а не ломает раскладку.
- Объяснимость. Каждая рекомендация должна быть понятна человеку без "чёрного ящика".
- Обратимость. Пользователь может отменить применение подсказки.
- Низкая когнитивная нагрузка. Система снимает сложность, а не добавляет её.
- Достоверность. И UX, и тексты, и логика должны ощущаться как правдоподобный продукт.
Приложение построено на:
- React
- TypeScript
- Vite
- Tailwind CSS
- Zustand
- Framer Motion
- Lucide Icons
- Vitest
Структура кода организована по продуктовым срезам:
src/
app/
providers/
store/
entities/
behavior/
session/
suggestion/
features/
decision-panel/
preferences/
session-start/
suggestions/
summary/
workspace/
shared/
config/
hooks/
lib/
types/
ui/
pages/
Ключевые технические решения:
- typed domain-модели для сессии, артефактов решения, поведения и подсказок
- локальное сохранение состояния через Zustand persist
- детерминированный rules engine для адаптивных рекомендаций
- undo-логика для применённых подсказок
- seed-контент вместо пустых заглушек, чтобы продукт ощущался живым
FocusBoard показывает не только "красивый интерфейс". Он демонстрирует связку из нескольких важных вещей:
- продуктовое мышление и позиционирование
- информационную архитектуру для сложных сценариев
- объяснимый adaptive UI без хаоса
- аккуратное моделирование состояния и поведения
- локальный и автономный пользовательский опыт
- кодовую структуру, которую удобно читать и развивать
Это делает проект хорошим кейсом на пересечении product thinking, UX systems и frontend architecture.
Установка зависимостей:
npm installЗапуск dev-сервера:
npm run devСборка production-версии:
npm run buildТесты:
npm testCI:
- workflow
CIзапускается наpushвmain/masterи на каждыйpull_request - pipeline проверяет
npm ci,npm testиnpm run build
- более глубокое редактирование инсайтов, рисков и tradeoffs
- настройка весов критериев решения
- быстрые клавиатурные команды для опытных пользователей
- разные product presets под типы решений
Сейчас FocusBoard — это цельный frontend-only прототип с ясной продуктовой логикой, локальным состоянием, объяснимыми подсказками и завершённым пользовательским потоком от старта до финального резюме.