DATA FLOW ⊗ REST API which queries database by some parameters ⊗ Returns data in JSON format (via Observable) ⊗ Displays it on frontend ⊗ Polls every second or so to get latest data* ⊗ *or use Websockets...
SAVING DATA INPUTTED BY USER ⊗ Handle form input ⊗ Send data to REST API ⊗ Check authorization ⊗ Save in database ⊗ Get back to the list (make sure to display new content if was created in the meantime)
⊗ Providing REST API (which has quite repetitive methods) ⊗ … or Websockets server to ensure better experience ⊗ Maintaining database ⊗ Managing users’ sessions and authorization
FIREBASE AUTH + DATABASE ⊗ Couple lines of code to setup authentication ⊚ Federated identity providers (FB, Google, Twitter, Github) ⊚ Email and password based protection ⊚ Custom auth system integration ⊗ Wide range of possibilities of protecting collections based on auth state ⊗ FirebaseUI handles sign-in flow
CLOUD FUNCTIONS ⊗ JS/TS function being invoked on certain trigger ⊗ Trigger can be HTTP or related to Firestore document (change, create, delete) ⊗ Ability to run any JS/TS code with any dependencies based on event data firebase deploy --only functions