Changelog

Every Firenook release, newest first: what changed, what it made faster, and what happens to your data when you upgrade.

The first release for public use

Firenook 0.2.0, the latest release, published on .

npm install --save-dev firenook@0.2.0
Read the 0.2.0 notes
  • A stable version

    npm install firenook and a bare npx firenook get 0.2.0 on any Node from 20 up; previews keep their own versions, and a preview install is told about 0.2.0.

  • firenook init in a terminal

    One screen with every choice made (the project id, the emulators on their usual ports, TypeScript, JavaScript or no Functions, the coding agents, the set-up), then the installs, Firenook pinned, the first build and the emulators started in the same terminal.

  • TypeScript compiled as you save

    --build runs each codebase's own build:watch beside the engine and starts it after the first compile; errors show in the log.

  • Ordered and range queries

    An order-preserving field index serves orderBy, range filters and cursors on a top-level field, and checks equality on other fields before a document is read; a batch get writes stored documents straight into the reply.

  • Node 22, 24 and 26

    Older is refused with how to switch; an odd or newer major starts with a warning; a codebase whose engines.node asks for another Node is warned about, as the official emulator warns.

  • Older Linux

    The engines need glibc 2.28 (RHEL 8, Debian 10, Ubuntu 20.04, node:24-slim and later) instead of 2.39; Alpine and older systems are told what they lack.

  • Security Rules as the official emulator applies them

    A gRPC request without an Authorization header is signed out, not the owner.

  • Nothing reaches production

    The console's snippets (Python Storage, Apple Firestore, Tasks and Eventarc everywhere) and emulators:exec, which now sets the official variables for the running emulators only.

  • Functions

    Params' defaults, .env.<alias>, the .env values at discovery, the project firebase use chose, warnings for triggers on services that do not run, functions:invoke --help, ext:vendor --offline, the Firebase login on Windows.

  • REST

    createDocument works, and every v1 method answers as the official emulator does (the differences kept are listed in COMPATIBILITY.md).

  • Starts and stops

    Two suites with one project id; Firestore closed after browser sessions; a killed launcher stops its engine, which saves the data; --import without metadata and a bad indexes file warn; firebase.json found from a folder inside the project; localhost and ::1 bound as officially.

  • Polish

    init --force keeps your rules, init --adopt keeps your formatting, --ui comes before ui.enabled: false, counts agree with their nouns, every service's lines reach the screen, CI=false is not CI.

Your data: Data 0.2.0 saves opens in 0.2.0-next.8, which rebuilds its own field index first; no emulator protocol or port changed, except that localhost now binds ::1 as well for the hub and the console, as officially.

Faster, release by release

What a release made faster, measured on the same data before and after it shipped. Lower is better on every measure.

orderBy a timestamp, limit 20, on 2.7 million documents

1,192× faster

0.2.0-next.8
5,128 ms
0.2.0
4.3 ms

The console’s Firestore tree, first map of 2.7 million documents

3× faster

Ready, with seven functions and every emulator

8× sooner

Opening saved data, 2.7 million documents

2,179× sooner

Checking a 7.8 GB seed before a resumed start

23× sooner, at least

0.2.0-next.4
23–26 s
0.2.0-next.5
under 1 s

A write, on a Mac

22× faster

Every multiple is rounded down. Each figure is from the release’s notes, and for 0.2.0 from its benchmark record. Against the official emulator: the benchmarks.

Every release

19 releases since the first preview on 7 September 2026. The previews came first; 0.2.0 is the first release for public use.

Firenook 0.2

  1. 0.2.0StableLatest

    The first release for public use

    • A stable version
    • firenook init in a terminal
    • TypeScript compiled as you save
    • Ordered and range queries
    And 8 more in the notes
  2. 0.2.0-next.8

    The Firestore tree at once, code in colour, npx on any Node

    • npx firenook gets this release on any Node from 20 up
    • The Firestore tree at once
    • Code in colour
    • The console behind local proxies
  3. 0.2.0-next.7

    Data kept without a seed, coding agents set up in one command, 54 MCP tools

    • A project with no seed keeps its data
    • --keep-data
    • firenook mcp add
    • 54 MCP tools, up from 19
    And 7 more in the notes
  4. 0.2.0-next.6

    Data closed on stop, starts in milliseconds, the store's size

    • A stop closes the data
    • A killed engine is no stop
    • Saved data opens in milliseconds
    • firenook state:inspect --state-dir DIR
    And 4 more in the notes
  5. 0.2.0-next.5

    Saved data: a quick seed check, quick repairs, clean stops

    • The seed check reads file details
    • Files operating systems write never block a start
    • A first import hashes the seed beside the import
    • A changed seed names its files
    And 5 more in the notes
  6. 0.2.0-next.4

    The terminal UI

    • The terminal UI
    • A start that cannot run
    • The plain output is unchanged
    • The release check
    And 2 more in the notes
  7. 0.2.0-next.3

    Firenook's own console, and Google's Emulator UI gone

    • The console
    • Google's Emulator UI is gone
    • CLI
    • Functions
  8. 0.2.0-next.2

    The read path, incremental listeners and a field index

  9. 0.2.0-next.1

    Firenook: the project renamed, one license

0.1, published as Fireside

  1. 0.1.0-next.9

    Cloud Tasks emulator, every configuration shape, the CLI surface

  2. 0.1.0-next.8

    Complete Authentication and a full Pub/Sub emulator

  3. 0.1.0-next.7

    Native Storage rules and the owned Functions/Extensions runtime

  4. 0.1.0-next.6

    Write-behind durability, scan and import performance

  5. 0.1.0-next.5

    Functions admission parity for upstream-ignored handlers

  6. 0.1.0-next.4

    Phase A–F qualified engine

  7. 0.1.0-next.3

    Independent source identity

  8. 0.1.0-next.2

    Public distribution cleanup

  9. 0.1.0-next.1

    Browser Auth repair

  10. 0.1.0-next.0

    First installable preview

The 0.1 releases were published as @fireside-dev/cli, before Firenook’s rename. About the former name.

Upgrade on purpose

Read what changed, and move when you’re ready. Every release says what it does to the data an earlier one kept.

npm install --save-dev firenook@0.2.0
Moving between versions