TalAter/annyang

💬 Распознавание речи для вашего сайта

Аудио⭐ 6 816TypeScriptпоследний релиз: v3.0.0
Открыть на GitHub ↗Сайт проекта ↗

Что это за инструмент

annyang — это легковесная JavaScript-библиотека (2 КБ) для распознавания речи в браузере, позволяющая управлять сайтом голосовыми командами.

Зачем нужен

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

Что можно реализовать

  • Управление веб-приложением голосовыми командами (например, 'hello' или 'search for *term')
  • Создание интерактивных голосовых помощников внутри сайта
  • Разработка доступных интерфейсов для пользователей с ограниченными возможностями
  • Быстрое прототипирование функций распознавания речи с минимальным кодом

Ключевые возможности

  • Минимальный вес библиотеки — всего 2 КБ
  • Отсутствие внешних зависимостей (zero dependencies)
  • Простой API с поддержкой параметров в командах (например, 'search for *term')
  • Легкая интеграция с GUI через библиотеку Speech KITT
  • Поддержка различных методов подключения: ESM, CommonJS, Script tag

👤 Кому подойдёт: веб-разработчики, создающие клиентские приложения на JavaScript

Релизы

v3.0.0majorbreaking
🕐 6 мес назад · релиз на GitHub ↗

Полный редизайн на TypeScript с поддержкой ESM/CJS/IIFE, строгими типами и безопасной работой в неподдерживаемых браузерах.

  • Breaking: Полный перепис на TypeScript; проверка поддержки браузера теперь требует вызова isSpeechRecognitionSupported(), а не проверки на существование объекта.
  • Added: Поддержка модулей ESM, CommonJS и IIFE, а также встроенные строгие типы.
  • Breaking: Удалена поддержка строковых имен функций в командах; теперь требуется передавать сами функции.
  • Added: Метод trigger() теперь работает независимо от статуса распознавания речи, что удобно для тестирования и фоллбэков.
  • Deprecated: Функция init() устарела и выдает предупреждение, так как инициализация происходит автоматически.