It's not really faster for most applications... it can be nice if you're enhancing a mostly static generated site.
Really wish there was a good solution for JSX with ES Modules... you *could* either do any translation server-side, or use some worker solution(s), but it gets messy. Similar for TS.
Have done a couple proof of concept bits, but it can get sticky really quickly.
Probably worth adding to the examples...
typeof undefined === "undefined"
typeof NaN === "number"
NaN in particular, along with Invalid Date can be interresting corner cases in practice. I find it's often best to rely on coercion and input validation over type checking.
The first followup to this should probably be falsey values, and how knowing them is useful for input validation.
Venturing OT, but if you're doing end to end tests, I would suggest getting familiar with Docker, docker-compose and its' usage. It's very easy to stand-up your entire environment, run your tests, and stand-down said environment. Many CI/CD runners have a full docker environment available, so this makes integration super easy as well.
I wouldn't suggest using this library/approach. First, read/write in your application directory is begging for trouble. Second, it's using an array lookup instead of an object/map. Third, it's not very flexible.
Alternatively to using Firebae... Self-hosting CockroachDB, FaunaDB, Cloudflare KV+Workers, Azure Storage Tables, DynamoDB and other databases behind an API or Cloudflare Workers are some other options as well for backend storage.