finds.dev← search

// the find

urish/firebase-server

★ 670 · TypeScript · updated May 2021

Firebase Realtime Database Server Implementation

A Node.js server that speaks the Firebase Realtime Database WebSocket protocol, so you can point a real Firebase JS client at localhost instead of a mock, mainly for integration tests. It's for anyone who was testing against the old Firebase Realtime Database (not Firestore) client-side and wanted to avoid hitting live infra or writing a fake in-memory shim.

Implements the actual wire protocol rather than mocking the SDK, so your test code exercises real client behavior including listeners, transactions, and the data-change event flow. Supports Firebase security rules validation via the targaryen library, letting you test rule logic offline. The CLI covers real workflows: bootstrapping with `-d`/`-f`, loading security rules, setting a shared auth secret for custom tokens, and an optional REST API. Has an actual test suite (server, token-validator, firebase-hash specs) with Travis CI and Coveralls wired up, not just a README claim.

Officially deprecated since the README's top line — last push was 2021-05-10, only security fixes going forward, no new features. The Firebase JS SDK has moved on since then, so protocol drift is a real risk for anyone trying to use this against a current client. The REST API explicitly has no authentication or authorization implemented, which is a footgun if you use that flag outside a throwaway test context. Tooling is dated too: Travis CI, tslint instead of eslint, CJS-style require examples — nothing here reflects current TS/Node tooling norms.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →