
Introduction to the course
Who this course is for
Install necessary softwares
Setting up a user to manage aws amplify framework and resources
Create enterprise cloud resources, including database tables and S3, by using a user profile with the Amplify framework and AWS Mobile Hub, then manage AWS exports via the command line.
Set up the backend with amplify by selecting a profile, creating an amplify admin user, and granting cloud formation permissions, then initialize the cloud project and troubleshoot permission errors.
Review how amplify init connects your app to the NWS backend and generates the cloud formation stack, including the deployment bucket and author role.
learn to integrate back-end services, enable user authentication with Amazon Cognito federated identities, and support Google or Facebook sign-in while preparing data storage in the database and S3.
Learn how user pools and identity pools work in AWS AppSync with Amplify, covering signup, login, federated logins with Facebook or Google, and identity IDs for authentication.
Install authentication dependencies and add auth via amplify add auth, then push the configuration to enable sign up, sign in, and access to protected resources.
Integrate the AWS auth client with Amplify and create cloud resources via CloudFormation during push. Grant IAM permissions to the Amplify admin user and Lambda, then re-run push.
Implement a user authentication flow with sign in and sign up, manage user state, and conditionally show sign-in or sign-out UI, including password policies and email verification.
Examine the user pool and identity pool, and learn how a unique user ID enables federated logins with Facebook and Google, creating a centralized cross-device user state.
Enable and customize third-party authentication with Facebook and Google in your app, configure sign up and sign in flows, and implement sign out plus login screen customization.
Learn how to implement real-time data updates with a GraphQL API using AWS AppSync and Amplify, including user sign-up and sign-in flows and subscribing to live database changes.
Compare rest and graph ql by highlighting a single endpoint, declarative queries, and strongly typed schemas; show field selection, status codes, and query-driven data retrieval.
Use the GraphQL explorer to run queries and mutations against a hub's resources, such as user data, logging, and location, while learning how inputs, subjects, and content bodies shape mutations.
Define a DynamoDB schema by creating user and location tables with id and attributes, then generate Amplify code to store, retrieve, and subscribe to real-time data in your app.
Publish your dynamo db schema to the cloud with the amplify framework, configure a GraphQL API, and push resources, generating code and resolving permission issues.
Review how AWS AppSync resources are created in the cloud, with tables for user and location, and generate code with Amplify for queries and mutations.
Integrate AWS AppSync with a Swift app by initializing the AppSync client in the app delegate and performing a GraphQL mutation to create users in DynamoDB.
Learn to fetch data from DynamoDB via queries and mutations, list and get users, and use GraphQL Explorer to try APIs, including creating locations and testing calls.
Implement real-time data with AWS AppSync by subscribing to create events to auto update on new locations, printing the location and the creating user, and handling delete subscriptions.
Power pagination with AWS AppSync by querying users with a limit, using the next token to fetch subsequent pages, and display results page by page.
AWS AppSync API keys expire seven days after creation, and using API KEY authentication is only suggested for development.
Learn how to replace the top-in sign-in screen with a custom user sign-in UI, including username and password fields, and plan a new design in the next lesson.
Design a custom sign-in screen by creating a dedicated storyboard, building a sign-in view controller with username and password fields, and presenting a custom sign-in UI.
Learn to design a signup screen using a static table view, adding text fields for username, email, and password, and a sign up button with proper constraints and navigation.
Build a sign-up screen with a custom sign-up table, wire username, email, and password fields, and integrate AWS Amplify authentication to register users and manage email verification.
Create a test user, verify with a code, sign in with username and password, and navigate to the main view using a custom sign-on controller; enable secure password entry.
Learn to build a complete quiz app by integrating the amplify framework and dynamo db, and see how these technologies come together to create a functional app.
Configure an aws user for Amplify, set up aws cli, create a Swift iOS single-view app, install Amplify dependencies with CocoaPods, and initialize Amplify before opening the Xcode workspace.
Learn to set up a backend with AWS AppSync and Amplify, initialize the app with the client, and implement a service to create a question via a mutation.
Configure an AppSync client with Cognito user pools to authenticate requests and create questions in a Swift iOS app, using Amplify and the AWS CLI with DynamoDB.
apply the dry principle by refactoring recurring error checks into a function that checks error conditions and returns a boolean, handling result and error types including connection and data errors.
Learn how to manage async workflows with the AppSync client in iOS Swift, handle closures and errors, and wait for results when creating and retrieving questions.
Design a quiz app view by building a storyboard-based UI with a simple view controller, navigation setup, and a stack of question and answer labels and buttons for user interaction.
Load quiz questions by running the list quiz questions query, fetch questions and answers, and display the first question in the quiz view, noting query versus mutation and cache policy.
Finalizing the quiz app by refactoring into reusable functions, adding a show message helper, loading answers on demand, and enabling navigation to the next question with a maintained current index.
Update the GraphQL schema by adding a category enum to the question model and push the changes to the Amplify API, regenerating code and queries.
Learn how to store images and videos in S3 with metadata in DynamoDB, enabling lookup and retrieval via Amplify, and implement a user profile with image upload.
Set up a user profile by creating a storyboard, adding a table view and navigation controller, and linking a bar button item with an icon to the user profile screen.
Configure a static table view for a user profile with two sections: details and image. Include text fields for first name, last name, occupation, and email, plus an image picker.
Connects a profile image view to storyboard controls, enables users to pick an image from the photo album, and prepares to save the selected image to S3 for the profile.
Discover how to add storage with amplify add storage, create an S3 bucket for user content, grant read-write access to logged-in users, and push resources with amplify to set up.
Learn to upload images to an S3 bucket from a Swift app, track upload progress, handle errors, and configure an auth role with Amplify for authenticated users.
Upload images to a protected Amazon S3 folder under the user Cognito ID, letting the user write while others read, and implement downloading the image using the same user ID.
Learn how to display a downloaded profile image by fetching data from S3, handling a completion callback, and updating the profile image view in the user profile tab.
Learn to integrate an existing DynamoDB table into your iOS app using AWS Amplify and AppSync by linking data sources, configuring permissions, and querying the table.
Explore how to invoke serverless lambda functions from a mobile app using the amplify framework, test a sample function, and view logs in CloudWatch.
Expose a lambda to the external world via API Gateway by creating a REST API with a GET method connected to the lambda, then deploy to test and production.
Expose all http methods through a single lambda using API Gateway proxy integration, enabling one lambda function to handle get, post, and other methods, with deployment via Amplify.
Create and deploy a new lambda function with amplify, attach it to a rest api gateway resource named Chris feedback lambda using lambda proxy integration, exposing get and post endpoints.
Test and verify a lambda behind api gateway using proxy integration, sending get and post requests with parameters, and monitor logs in cloud watch after amplify push.
Invoke a lambda from your iOS app by wiring API gateway, bridging header setup, and a Swift client to call a proxy endpoint with json body and query parameters.
Upgrade the amplify cli to the latest version and migrate your project. Resolve permission and ownership issues to ensure a safe upgrade that updates CloudFormation API calls without data loss.
Amplify provides:
Easy-to-Use Library: Choose your cloud services and easily connect them to your app with just a few lines of code.
Powerful Toolchain: Effortlessly create and maintain sophisticated serverless backends for your apps.
Beautiful UI Components: Accelerate app development by leveraging our beautiful out-of-the box UI components.
AWS Amplify enables developers to develop and deploy cloud-powered mobile and web apps.
The Amplify Framework is a comprehensive set of SDKs, libraries, tools, and documentation for client app development.
The Amplify Console provides a continuous delivery and hosting service for web applications.
The Amplify CLI lets you quickly add backend features to your application so that you can focus on your application code.
AWS amplify frameworks simplifies AWS resource integration with IOS apps. Instead of integrating individual SDKs for each resource, we can just use amplify to add or remove resources.
In this course we will learn building IOS apps with with AWS as backend using AWS amplify CLI.
This course will helps you to choose world's most popular cloud service AWS as backend for your app. Almost all the features needed for your app will be discussed here.
At the end of this course you will have the necessary skill to develop IOS apps with AWS platform using amplify framework.
This course focuses on practical implementation of the apps along with a summary of most common issues and techniques to handle them.