Firebase is a suite of over 25 tools which can easily be integrated into a Google Cloud Platform project. It provides APIs for developing Android and iOS mobile applications and web applications. It provides tools for developing high performance applications. Simple API calls allow complex operations, such as data persistence, to be performed without complex programming. It allows front end developers to develop complete Serverless applications. It provides tools for monitoring application performance. Analytics allow the usage of an application to be analyzed to identify how to achieve the best business value.
This program makes use of hands-on workshops which demonstrate how to make the best use of Firebase to develop, monitor and analyze applications. Delegates are invited to Bring Your Own Code for the workshops. The duration of the program depends on the level of coverage required.
The program is customizable to meet your needs. An overview will be given for each Firebase feature. In depth coverage with code examples are available for all features on demand. Choose whether code examples are required for Android, iOS and/or Web.
Setting up a Firebase development environment.
Delegates should bring a laptop which has the necessary software installed to developan Android, iOS or web application. Ideally the laptop will also have existing Android, iOS or web application code. A Google Cloud Platform account is required. An Apple developer account is required for iOS development. Setup instructions will be provided.
Getting Started with Firebase
- What is Firebase?
- Firebase components.
- Supported languages and platforms.
- Google Cloud Platform projects.
- Adding Firebase to a project.
- The Firebase console.
- Overview of Firebase Features
Firebase Platform Support
- Android applications.
- iOS applications.
- Firebase administration applications.
- Workshop: Start building an Android, iOS or web Firebase application.
- Firebase SDK authentication API.
- Email address and password authentication.
- Federated identity provides: Google, Facebook, Twitter, Github.
- Phone number identification via SMS.
- Custom authentication.
- Workshop: Add Firebase authentication to the application.
- Cloud realtime data synchronization solutions.
- Comparison of Cloud Firestore, Realtime Database and Cloud Datastore.
- Structuring data.
- Client local storage.
- Accessing data.
- Security and data validation.
- Querying data.
- Workshop: Implement Cloud Firestore or Realtime Database.
- Google Cloud Storage.
- Security and file transfer.
- Storing images, audio, video and other content.
- Access content in the cloud.
- Configuration options.
- Workshop: Implement Cloud Storage.
- Firebase hosting principles.
- Using custom domain names.
- Uploading content with Firebase CLI.
- Server certificates.
- Workshop: Implement Firebase Hosting.
- Function as a Service (FaaS).
- Firebase and Cloud Functions.
- Cloud Event Triggers
- HTTP Triggers
- Workshop: Creating Cloud Functions.
- Containers and Orchestration.
- Cloud Run principles.
- Managed Cloud Run and IAM.
- Workshop: Using Cloud Run.
- Measuring startup time and network traffic.
- Performance metrics.
- Capturing performance using traces.
- Creating custom metrics.
- Workshop: Enable Performance Monitoring.
Firebase Cloud Messaging (FCM)
- FCM notification messages.
- FCM data messages.
- Admin SDK.
- HTTP and XMPP APIs.
- Notifications composer.
- Workshop: Use Firebase Cloud Messaging.
- Application configuration parameters.
- Customizing applications by demographics or analytics.
- Instrumenting the application.
- Policies and limits of remote configuration.
- Workshop: Using Remote Config.
- Firebase A/B Testing.
- In-App Messaging.
- Dynamic Links.
- App Indexing.
Google Analytics for Firebase and Crashlytics
- Analytics principles.
- Crashlytics and analytics.
- Tracking, prioritizing and fixing application stability issues.
- Reporting events in an application.
- Defining audiences by usage and demographics.
- Understanding how applications are being used.
- Custom events and monitoring.
- Integration with other services.
- Workshop: Using Analytics and integrating with other services.
- An understanding of mobile or web applications and cloud technologies.
- Experience with developing mobile or web applications.
- Mobile or web application developers.