# The console for the Firebase emulators

> Firenook’s console covers every emulator it runs, live, on the Emulator UI’s port: function calls, Firestore, Auth, Storage, Pub/Sub, Tasks, Eventarc and rules.

Google’s Emulator UI has no page for your Functions, Pub/Sub, Cloud Tasks or Eventarc, only a log. Firenook’s console covers every service it runs, live, on the Emulator UI’s port.

`npx firenook emulators:start`

[Read the console guide](https://firenook.dev/docs/tools/console)

![The console’s Overview: all nine services running with their ports and counts, recent problems, the data and the engine](https://firenook.dev/_astro/overview-dark.BMW3RqFh_Z2qGFN9.webp)

The Overview: every service’s health, its counts and its port, the problems since the start, and the engine. Every picture on this page is the console on the demo project, on 0.2.0.

## Every function call, kept

Each call with what triggered it, its request or event, its answer, its duration and the lines it logged. Open a failed one to read its error and stack, then run it again after your fix.

![Function calls: every call with its time, function, trigger, outcome and duration, one of them a 500](https://firenook.dev/_astro/invocations-dark.CWGnqWbs_Z2osD7F.webp)

## Your functions at a glance

Every function with its trigger, its codebase, when it last ran, how often, how often it failed and how long it takes. Scheduled ones show their next run.

![All functions: checkout, nightlyReport, sendReceipt and stripeWebhook with their triggers, runs, errors and times](https://firenook.dev/_astro/functions-dark.BggDJNYG_Z5B0c1.webp)

## Firestore, browsable and editable

Collections at once, even on a store of millions of documents, documents as fields or as code, and edits that save only when you say so.

![Firestore: the collections, a page of orders and one order open for editing](https://firenook.dev/_astro/firestore-dark.BjcvnP5W_Z1kSvWK.webp)

## Rules you can watch decide

The rules in force beside every decision they made, with the line that decided it. Try a request in the playground, run tests, and see which lines your app has covered.

![Firestore rules: the rules file in an editor, with the decisions, playground, tests and coverage beside it](https://firenook.dev/_astro/rules-dark.DjIXYKyN_2juzKd.webp)

## Users, and what Auth would have sent

Users with their providers, claims and activity. The verification emails, sign-in links and SMS codes Auth would have sent wait in an inbox.

![Authentication: a list of users with filters, one open with its profile, security and providers](https://firenook.dev/_astro/auth-dark.BbDpXL1T_ZNsMiM.webp)

## Files, shown as files

Browse buckets as folders or as a grid of pictures, upload and move files, and read the rules that guard them.

![Storage: a folder of product photos shown as a grid of thumbnails](https://firenook.dev/_astro/storage-dark.Bd-QN-N9_Z1YFCEj.webp)

## Messages you can see

Each topic’s messages with their attributes, its subscriptions and their backlog, publishing by hand, and your schedules, which you can pause or run now.

![Pub/Sub: the orders topic with its four messages, their data and attributes](https://firenook.dev/_astro/pubsub-dark.mZaUBOmK_1kb0Ap.webp)

## One log for everything

Every emulator and every function in one stream, filtered by level, kind, service or function, each line linked to the call that printed it.

![Logs: the lines of every emulator and function, with filters by level, kind, service and function](https://firenook.dev/_astro/logs-dark.i6PeNDsW_Zl6AN3.webp)

## And the rest

The console covers every service the suite runs, so nothing you start is out of sight.

- ### Cloud Tasks

  Queues with their tasks; pause, resume and purge a queue, run or delete a task.

- ### Eventarc

  Every event with what each function did with it, and publishing or replaying one.

- ### Extensions

  Each instance with its state and functions, and its parameters, reloaded when they change.

- ### Connect

  The code to connect your app, for the web, Flutter, Android, Apple platforms and servers, and your coding agent.

- ### Snapshots and resets

  Download Firestore, Auth and Storage as an export, or empty one service without a restart.

- ### Light, dark and offline

  It follows your system’s theme, needs no network, and the Emulator UI’s old addresses lead to it.

## Questions

The rest is in [the console guide](https://firenook.dev/docs/tools/console). Something else? [Ask on GitHub](https://github.com/firenook-dev/firenook/issues).

Where is the console?

At /console on the Emulator UI’s port: http\://127.0.0.1:4000/console by default, or the port emulators.ui.port gives in firebase.json. Press o in Firenook’s terminal to open it.

What happened to Google’s Emulator UI?

Firenook doesn’t serve it. The console covers every feature it had, and its addresses, such as /firestore or /auth, lead to the console’s page for the same thing.

Can I open it through a proxy or another host name?

Any name under localhost works, such as my-app.localhost behind a local proxy. Other names need --allowed-hosts, so a page on another site can’t reach your emulators through a name it controls.

Does it change my data when I look?

No. Reading never writes. Edits are staged until you save them, and the console asks before it deletes or resets anything.

## Open it on your project

Start Firenook in your project and press `o`. The console opens on the Overview, live, with nothing to install.

`npm install --save-dev firenook`

[Get started](https://firenook.dev/docs/get-started/install)
