Web Deployment

Prerequisites

Before proceeding, ensure that you have the Firebase CLI and Flutter SDK installed on your machine. If not, follow the installation guides available at Firebase CLI Documentation and Flutter Installation Guide.

Firebase Deployment Procedure

We have optimized our web deployment process by introducing an automated script, build-client-web.sh. This script manages Firebase login, Flutter build, and Firebase deployment in one go.

Production releases should be done only once agreed upon by the team and supervised by a senior developer.

On Mac

./build-client-web.sh [staging/production] portal.rekindle[apps/learning].com

On Windows

./build-client-web.bat [ENVIRONMENT] portal.rekindle[apps/learning].com

For example, to build staging: ./build-client-web.sh staging portal.rekindleapps.com

This script performs the following operations:

  • Checks if Firebase CLI is installed
  • Logs in to Firebase (requires user input)
  • Sets up the Flutter build with the provided environment and host parameters
  • Selects the appropriate Firebase project based on the provided environment
  • Deploys the built web application to Firebase

Post Deployment

Once the deployment is successful, please allow some time for the changes to propagate across the network. You can then verify the deployment by visiting [staging/production]-eex.web.app OR [CLIENT].rekindle[apps/learning].com.