Session

Fullstack App with Flutter and Firebase [workshop]

Firebase and Flutter are two impressive stacks these days to build world-class applications at scale. These two have fantastic hand-to-hand features that make us as productive and agile as possible. Flutter is a UI toolkit to help you create beautiful applications that can run on six platforms. Firebase, on the other hand, is a fantastic serverless approach towards the backend as a service to help you run your applications at any scale.

You'll explore what the services are in Firebase. Next, you'll discover how to integrate a Flutter app with Firebase and use Authentication and Analytics services. Then, you'll delve into Firebase extensions. Then, you'll learn how to benefit from Cloud Firestore to manage your database and message to deliver push notifications to your users.

At the end of the workshop, you'll have the skills and knowledge to create a full-stack app using Flutter and Firebase needed to deliver a scalable and high-quality app to your customer.

Each section comes with practices on a working app built throughout the workshop and is suitable for everyone who wants to learn Dart and Flutter from scratch.

Approach:
The instructor will build a pre-designed page from a production application in the workshop.

Requirements:
- You are familiar with at least one programming language
- You have done
- Install on Windows (Please use this link https://flutter.dev/docs/get-started/install)
- install in Linux / Mac (Please use this link https://flutter.dev/docs/get-started/install)
- Setup Android Studio and Xcode (Please use this link https://flutter.dev/docs/get-started/install)
- Setup Emulators (Please use this link https://flutter.dev/docs/get-started/install)
- Setup IDEAs and Plugins (Please use this link https://flutter.dev/docs/get-started/install)

Agenda:

A quick Introduction to Dart
- Dart variables and Constants
- Strings and String Interpolation
- Dart data types
- Inheritance in Dart
- Functional Dart
- Dart Built-in types
- Dart List/Array
- Conditions in Dart
- Streams and Future
- Dart Standard Libraries
- Package dependencies with Pub

Mastering Layouts, Widgets, and UI in Flutter
- Material Design (ANDROID)
- Cupertino Design (IOS)
- Stateful and Stateless Widgets
- Layouts (Column, Row, Grid, Positioned, Stack, StaggeredGridView, ...)
- Widgets (Scaffold, App bar, Text, ... )
- Styling in Flutter (Color, Fonts, Themes, Images, Backgrounds, padding, margin, borders, shadows, and SVGs)
- GestureDetector and Inkwell

Navigation and routing in Flutter & Basic State management and dependencies injection
- Working with Navigator and GoRouter
- Riverpod

Firebase and Flutter Integration
- Setup Firebase
- Authentication with Firebase
- Setup Firestore and CRUD operation
- Firebase Extensions

Networking Layer
- Working with Rest API
- Working with JSON, Serializing, and Deserializing

Deployment
- building for iOS
- build for Android

At the end of this workshop, we have implemented a fully functional real-time app that can be released on both App and Google Play stores.

Majid Hajian

DevRel at Invertase.io

Oslo, Norway

View Speaker Profile