Об этом проекте

Эта библиотека обеспечивает скоординированную тактильную, слуховую и визуальную обратную связь для веб-взаимодействий с помощью единого настраиваемого API. Она поддерживает вибрацию на Android через navigator.vibrate и Taptic Engine на iOS с помощью хаков с переключателями ввода. Каждый канал обратной связи — тактильный, звуковой и визуальный — можно независимо включать, выключать или настраивать во время выполнения. Звук синтезируется через Web Audio с 20 встроенными сигналами или настраиваемыми пакетами семплов. Визуальные эффекты используют частицы-эмодзи и «пружинистые» всплывающие элементы, учитывая настройку prefers-reduced-motion. API имитирует семантику iOS UIFeedbackGenerator (selection, impact, notification и т. д.) и позволяет индивидуально настраивать силу, громкость, масштаб и сопоставление событий. Разработанная с учетом будущей замены бэкенда на нативный (например, Capacitor), библиотека не зависит от фреймворков, безопасна для SSR, поставляется с типами TypeScript и не имеет зависимостей во время выполнения. Средства диагностики помогают отлаживать специфические для платформ проблемы, такие как отсутствие разрешений на вибрацию. Идеально подходит для улучшения обратной связи пользовательского интерфейса без прямого использования специфических для платформ API.