Firenook — независимый open-source эмулятор Firebase на Rust, совместимый с привычной локальной разработкой. Проект читает firebase.json и .firebaserc, использует прежние SDK, environment variables и порты, а также импортирует и экспортирует официальный формат данных. Для перехода достаточно заменить команду запуска эмуляторов; firebase-tools остаётся нужен для deploy и остальных операций. Java не требуется.
Поддерживаются Firestore, Authentication, Cloud Storage, Cloud Functions, Extensions, Pub/Sub, Cloud Tasks и Eventarc. Realtime Database, Hosting, App Hosting и Data Connect не эмулируются, хотя их наличие в конфигурации не мешает запуску и приводит к предупреждению. Functions работают на Node 22, 24 или 26. Сам Firenook поставляется как npm package с native engine для macOS, Linux и Windows.
Сравнение проводилось на реальном приложении с 211 205 документами Firestore и 6,7 ГБ Storage. На двух часах production-трафика медианная запись составила 5,1 мс против 208,2 мс у официального эмулятора, listener update — 11 мс против 209 мс, пиковая память — 2,11 ГиБ против 22,57 ГиБ. Restart с данными занял 0,59 секунды против 30,8, CPU time снизился на 61%. Firenook быстрее ответил на 25 из 26 query shapes и сравнялся в последнем. Это результаты одного опубликованного сценария, а не гарантия для любой нагрузки.
Опция keep-data сохраняет Firestore, Auth и Storage между запусками без постоянных export/import. При обычной остановке данные закрываются cleanly, а crash может потерять максимум последнюю секунду записей; официальный эмулятор рискует изменениями после последнего export. Команда emulators:exec запускает suite и тесты, передаёт переменные окружения и возвращает exit code для CI.
Локальная console показывает вызовы functions, triggers, ошибки, длительность и logs, работает offline и ничего не отправляет наружу. Через firenook mcp coding agent получает 54 tools для данных, логов, replay вызовов и анализа Security Rules.
Версия 0.2.0 — первый публичный релиз. Проект распространяется под Apache 2.0 и не связан с Google. Разработчики рекомендуют фиксировать lockfile и обновлять Firenook осознанно, как и другой инструмент локальной инфраструктуры.