Warning: This package has been discontinued. Although it does its job fairly well, its API is not well thought out so I have decided not to work on it anymore.
Firetype is a lightweight TypeScript library that lets you strictly type your Firebase architecture.
Firetype wraps the Firebase SDK in a way that lets you provide a set of types describing your data so you can prevent bugs, errors and crashes at compile time. It remembers the "schema" that you feed to it and stops you from writing bad code. This, combined with the ease with which it lets you bring changes to your codebase, provides a great developer experience.
Firetype comprises 2 packages, Firetype Client and Firetype Server, both of which rely on a single direct dependency: Firetype Core. Whereas Firetype Client must be used alongside Firebase JS SDK, Firetype Server must be used with Firebase Admin SDK and Firebase Cloud Functions SDK.
This project is made available under the MIT License.