Becoming a full-stack developer requires a hand in all layers of the application development stack. This includes Frontend, Backend, Database and Infrastructure.
Google Cloud Platform is a suite of cloud computing services used by Google and external business for running various kinds of software. This platform contains relevant services allowing us to be effective in building full-stack applications.
In this mini course we will build an Image Upload Mobile App using a couple of Dart packages primarily gcloud and googleapis_auth. These packages provide a set of helper classes for connecting to Google Cloud Platform services.
We will be using the Flutter SDK to build our mobile app since it provides a great set of features and tools for building cross-platform mobile applications. It also makes sense to be using Flutter as it’s also written in Dart :)
Watch full Mini course
Getting started
We need to set up a Google Cloud Platform account. It’s free to set up and they’re currently offering $300 credit for 90 days. This will allow you enough time to use the Cloud Storage service for uploading images to.
The contents of the mini course below are as follows:
00:00 Intro
00:19 App demo
00:57 Create a Google Cloud Project
01:32 Create a Cloud Storage bucket
02:11 Setup dependencies
02:43 Implement image picker
06:31 Create your IAM Service Account
07:51 Implement CloudApi Service class
09:34 Load IAM credentials into CloudApi Service
11:01 Make request to Google Cloud Storage
12:10 Set correct content type for image
14:31 Set custom metadata on image
15:08 Implement loading and uploaded state
16:59 Set bucket access permissions
17:46 Outro
Once you’ve set up a Google Cloud Platform account, create a Flutter project by running the following command:
$ flutter create new_project
Add the following packages under the dependencies
key of your pubspec.yaml file:
dependencies:
gcloud: ^0.7.3
googleapis_auth: ^0.2.12
image_picker: ^0.6.7+10
mime: ^0.9.7
Then run pub get
to update your packages. Once you are setup, see the course for the full demonstration.