SlideShare a Scribd company logo
1 of 52
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
03.04.2019
O S L O
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Simplify your Web & Mobile apps
with cloud-based serverless backends
Sébastien Stormacq, Technical Evangelist
M A D 3
O S L O
03.04.2019
{
"name": "Sébastien Stormacq",
"role": ”Technical Evangelist",
"company": "Amazon Web Services”,
"twitter": "@sebsto”,
“github” : "sebsto"
}
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
A typical day in developer life
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
We need an app to let our customers update preference
settings – our competitors just launched the same thing, so I
need it fast. I don’t want to pay a lot for it, especially when
no one is using it. But remember that we’re growing, so make
sure it scales great and is easy to manage and operate. And
you’re on your own – sorry!
A typical day in developer life
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
We need an app to let our customers update preference
settings – our competitors just launched the same thing, so I
need it fast. I don’t want to pay a lot for it, especially when
no one is using it. But remember that we’re growing, so make
sure it scales great and is easy to manage and operate. And
you’re on your own – sorry!
A typical day in developer life
No problem, I will use
a cloud-based &
serverless backend.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Serverless means
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Serverless means
No Server to Provision or Manage Scale with Usage
Availability and Fault Tolerance Built-in Pay for value
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Serverless across the stack
Database
AccessCompute
Developer Workflow
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
What obstacles developers are facing?
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
165+ services
TECHNICAL & BUSINESS SUPPORT
Support Professional
Services
Optimization
Guidance
Partner
Ecosystem
Training &
Certification Solutions Management
Account
Management
Security & Billing
Reports
Personalized
Dashboard
MARKETPLACE
Business Apps
Business
Intelligence
DevOps Tools Security Networking StorageDatabases
IoT
Rules Engine
Device Shadows
Device SDKs
Device Gateway
Registry
Local Compute
MIGRATION
Schema
Conversion
Exabyte-Scale
Data Migration
Application
Migration
Database
Migration
Server Migration
HYBRID
Integrated
Networking
Data Integration
Integrated Identity &
Access
Integrated Resource &
Deployment Management
Integrated Devices
& Edge Systems
ML / IA
Custom Model
Training & Hosting
Conversational
Chatbots
Image & Scene
Recognition
Facial Recognition
& Analysis
Deep Learning
(Apache MXNet,
TensorFlow, &
others)
Text to Speech
Facial Search
ENTERPRISE
Virtual Desktops
App Streaming
Sharing &
Collaboration
Corporate Email
Communications
Contact Center
MOBILE
API Gateway
Single Integrated
Console
Identity
Sync
Mobile Analytics
Mobile App
Testing
Targeted Push
Notifications
DEV/OPS
One-click App
Deployment
DevOps Resource
Management
Application Lifecycle
Management
Containers
Triggers
Resource Templates
Build and Test
Analyze and Debug
Patching
ANALYTICS
Data Warehousing
Business Intelligence
Elasticsearch
Hadoop/Spark
Data Pipelines
Streaming Data
Collection
ETL
Streaming Data
Analysis
Interactive SQL
Queries
APP SERVICES
Queuing & Notifications
Workflow
Email
Transcoding
Search
INFRA
Regions
Availability
Zones
Points of
Presence
CORE SERVICES
Compute
VMs, Auto-scaling,
Load Balancing,
Containers, Virtual
Private Servers,
Batch Computing,
Cloud Functions,
Elastic GPUs, Edge
Computing
Storage
Object, Blocks,
File, Archivals,
Import/Export,
Exabyte-scale data
transfer
CDN
Databases
Relational,
NoSQL, Caching,
Migration,
PostgreSQL
compatible
Networking
VPC, DX, DNS
SECURITY & COMPLIANCE
Identity
Management
Key Management
& Storage
Monitoring
& Logs
Configuration
Compliance
Web Application
Firewall
Assessment
& Reporting
Resource &
Usage Auditing
Access
Control
Account
Grouping
DDOS Protection
MANAGEMENT TOOLS
Monitoring
Manage
Resources
Resource
Templates
Configuration
Tracking
Server
Management
Service
Catalogue
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Many lines of boiler plate code
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Introducing AWS Amplify
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amplify – a CLI to Provision Services
$ amplify add auth
$ amplify add storage
$ amplify add api
$ amplify push
Add an Amazon Cognito User Pool
Create and secure an Amazon S3 bucket
Add an AWS AppSync or API Gateway
Deploy via AWS CloudFormation
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amplify – A Set of Open-Source Libraries
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Let’s enrich a React web app
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Initialise amplify
$ amplify init
$ amplify push
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
#1 add authentication
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Provision the service
$ amplify add auth
$ amplify push
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Modify our App
import Amplify from 'aws-amplify’;
import { withAuthenticator } from 'aws-amplify-react’;
// 'aws-amplify-react-native';
import awsmobile from './aws-exports’;
Amplify.configure(awsmobile);
…
export default withAuthenticator(App);
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Demo
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
$ amplify add auth && amplify push
AWS Cloud
Clients
AWS Cognito User Pool
Accounts
Multi Factor
Authentication
Signup & Signin
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
#2 add an API
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
https://2018.stateofjs.com/data-layer/overview
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
query GetNote {
getNote(id: ”1”) {
id
value
}
}
mutation CreateNote {
createNote(value: “My first note”) {
id
value
}
}
subscription OnCreateNote {
onCreateNote {
id
value
}
}
GraphQL, a query language for APIs
type Note {
id: ID!
value: String!
}
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AppSync, a runtime to execute the query
query GetPost {
getPosts(id: ”1”) {
id
title
comments {
content
}
author {
name
}
}
}
query GetPost {
getPosts(id: ”1”) {
id
title
comments {
content
}
author {
name
}
}
}
Amazon
EC2
{
"data" : {
"posts" : [
{
"id" : 1,
"title" : "Introduction to GraphQL",
"comments" : [
{
"content" : "I want GraphQL for my next App!"
}
],
"author" : {
"name" : "Sébastien Stormacq"
}
}
]
}
}
Amazon
DynamoDB
AWS
Lambda
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Provision the API
$ amplify add api
$ amplify push
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
$ amplify add api
$ amplify add api
? Please select from one of the below mentioned services GraphQL
? Provide API name: amplifynotes
? Choose an authorization type for the API Amazon Cognito User Pool
Using service: Cognito, provided by: awscloudformation
The current configured provider is Amazon Cognito.
? Do you want to use the default authentication and security configuration?
Yes, use the default configuration.
Successfully added auth resource
? Do you have an annotated GraphQL schema? No
? Do you want a guided schema creation? true
? What best describes your project: Objects with fine-grained access control
(e.g., a project management app with owner-based authorization)
? Do you want to edit the schema now? Yes
Please edit the file in your editor:
/<path>/amplify/backend/api/amplifynotes/schema.graphql
? Press enter to continue
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
A basic schema
type Note {
id: ID!
note: String!
}
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Transformers (aka annotations)
type Note
@model @auth(rules: [{allow: owner}]){
id: ID!
note: String!
}
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Demo
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
$ amplify add api & @model
AWS Cloud
Clients
AWS AppSync Amazon DynamoDB
Table
Schemas Resolvers Data Sources
type Query {
getNote(...): Note
listNotes(...): Note
}
type Mutation {
createNote(...): Note
updateNote(...): Note
deleteNote(...): Note
}
type Subscription {
onCreateNote (...): Note
onUpdateNote (...): Note
onDeleteNotet(...): Note
}
type Note {
id: ID!
value: String
}
queries
mutations
getNote
listNotes
updateNote
deleteNote
createNote
Note Table
Datasource
IAM Role
ARN
Note Role
ARN
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
#3 add search capability
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Update GraphQL Transformer
type Note
@model @auth(rules: [{allow: owner}])
@searchable {
id: ID!
note: String!
}
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Provision the service
$ amplify push
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Demo
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
@searchable
AWS Cloud
Clients
AWS AppSync Amazon DynamoDB
Table
Schemas Resolvers Data Sources
queries
mutations
getNote
listNotes
updateNote
deleteNote
createNote
Note Table
Datasource
IAM Role
ARN
Note Role
ARN
type Query {
getNote(...): Note
listNotes(...): Note
}
type Mutation {
createNote(...): Note
updateNote(...): Note
deleteNote(...): Note
}
type Subscription {
onCreateNote (...): Note
onUpdateNote (...): Note
onDeleteNotet(...): Note
}
type Note {
id: ID!
value: String
}
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
@searchable
AWS Cloud
Clients
AWS AppSync
Document Index
Amazon ElasticSearch
Schemas Resolvers Data Sources
type Query {
getNote(...): Note
listNotes(...): Note
searchNotes(...): [Note]
}
type Mutation {
createNote(...): Note
updateNote(...): Note
deleteNote(...): Note
}
type Subscription {
onCreateNote (...): Note
onUpdateNote (...): Note
onDeleteNotet(...): Note
}
type Note {
id: ID!
value: String
}
queries
mutations
getNote
listNotes
updateNote
deleteNote
createNote
ElasticSearch
Datasource
IAM Role
ARN
ES
Domain
ARN
Streaming
Lambda
Note Table
Datasource
IAM Role
ARN
Note Role
ARN
searchNotes
Amazon DynamoDB
Table
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
#4 deploy the app
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Provision the service
$ amplify add hosting
$ amplify publish
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
amplify add hosting
$ amplify add hosting
? Select the environment setup: DEV (S3 only with HTTP)
? hosting bucket name my_hosting_bucket
? index doc for the website index.html
? error doc for the website index.html
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Demo
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
amplify publish (dev)
AWS Cloud
Clients
Amazon Cloudfront Amazon S3
Bucket serving
static web content
Edge Locations
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
amplify publish (prod)
AWS Cloud
Clients
Amazon Cloudfront Amazon S3
Bucket serving
static web content
Edge Locations
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Advanced Topics
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amplify black belt tips
!
$ amplify checkout ENV
$ amplify add ENV
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amplify black belt tips
!
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amplify black belt tips
!
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
What did we just do ?
We created a front end web app backed by cloud services
• User Sign-in, Sign-up (Amazon Cognito)
• CRUD GraphQL API (AWS AppSync + Amazon DynamoDB)
• Search API (Amazon ElasticSearch)
• Hosting (Amazon S3, Amazon CloudFront)
https://github.com/sebsto/amplify-react-workshop
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Take Away
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Thank you!
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Sébastien Stormacq, Technical Evangelist
{
"name": "Sébastien Stormacq",
"role": ”Technical Evangelist",
"company": "Amazon Web Services”,
"twitter": "@sebsto”,
“github” : "sebsto"
}
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Please complete the session
survey in the mobile app.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.

More Related Content

What's hot

The Future of API Management Is Serverless
The Future of API Management Is ServerlessThe Future of API Management Is Serverless
The Future of API Management Is ServerlessChris Munns
 
Serverless APIs and you
Serverless APIs and youServerless APIs and you
Serverless APIs and youJames Beswick
 
How to truly delegate within an account with permission boundaries - SEC301 -...
How to truly delegate within an account with permission boundaries - SEC301 -...How to truly delegate within an account with permission boundaries - SEC301 -...
How to truly delegate within an account with permission boundaries - SEC301 -...Amazon Web Services
 
AWS SSA Webinar 4 - Building out your multi-account infrastructure
AWS SSA Webinar 4 - Building out your multi-account infrastructureAWS SSA Webinar 4 - Building out your multi-account infrastructure
AWS SSA Webinar 4 - Building out your multi-account infrastructureCobus Bernard
 
What can you do with Serverless in 2020
What can you do with Serverless in 2020What can you do with Serverless in 2020
What can you do with Serverless in 2020Boaz Ziniman
 
Accelerating Cloud Adoption in Federal Government and Regulated Sectors with ...
Accelerating Cloud Adoption in Federal Government and Regulated Sectors with ...Accelerating Cloud Adoption in Federal Government and Regulated Sectors with ...
Accelerating Cloud Adoption in Federal Government and Regulated Sectors with ...Amazon Web Services
 
ArmadaJS - how to build a full-stack airline ticketing web app
ArmadaJS - how to build a full-stack airline ticketing web appArmadaJS - how to build a full-stack airline ticketing web app
ArmadaJS - how to build a full-stack airline ticketing web appHeitor Lessa
 
20200513 Getting started with AWS Amplify
20200513   Getting started with AWS Amplify20200513   Getting started with AWS Amplify
20200513 Getting started with AWS AmplifyMarcia Villalba
 
e커머스 통합운영 자동화 사례 및 보안강화 방안 - 양수연 상무, 삼성SDS / 임선진 팀장, 삼성SDS :: AWS Summit Seou...
e커머스 통합운영 자동화 사례 및 보안강화 방안 - 양수연 상무, 삼성SDS / 임선진 팀장, 삼성SDS :: AWS Summit Seou...e커머스 통합운영 자동화 사례 및 보안강화 방안 - 양수연 상무, 삼성SDS / 임선진 팀장, 삼성SDS :: AWS Summit Seou...
e커머스 통합운영 자동화 사례 및 보안강화 방안 - 양수연 상무, 삼성SDS / 임선진 팀장, 삼성SDS :: AWS Summit Seou...Amazon Web Services Korea
 
AWS CAF come aiutare la tua azienda ad adottare con successo il Cloud AWS
AWS CAF come aiutare la tua azienda ad adottare con successo il Cloud AWSAWS CAF come aiutare la tua azienda ad adottare con successo il Cloud AWS
AWS CAF come aiutare la tua azienda ad adottare con successo il Cloud AWSAmazon Web Services
 
No Hassle NoSQL - Amazon DynamoDB & Amazon DocumentDB | AWS Summit Tel Aviv ...
 No Hassle NoSQL - Amazon DynamoDB & Amazon DocumentDB | AWS Summit Tel Aviv ... No Hassle NoSQL - Amazon DynamoDB & Amazon DocumentDB | AWS Summit Tel Aviv ...
No Hassle NoSQL - Amazon DynamoDB & Amazon DocumentDB | AWS Summit Tel Aviv ...AWS Summits
 
Favorire l'innovazione passando da applicazioni monolitiche ad architetture m...
Favorire l'innovazione passando da applicazioni monolitiche ad architetture m...Favorire l'innovazione passando da applicazioni monolitiche ad architetture m...
Favorire l'innovazione passando da applicazioni monolitiche ad architetture m...Amazon Web Services
 
Hands-on with AWS Security Hub - FND213-R - AWS re:Inforce 2019
 Hands-on with AWS Security Hub - FND213-R - AWS re:Inforce 2019  Hands-on with AWS Security Hub - FND213-R - AWS re:Inforce 2019
Hands-on with AWS Security Hub - FND213-R - AWS re:Inforce 2019 Amazon Web Services
 
Building API Driven Microservices
Building API Driven MicroservicesBuilding API Driven Microservices
Building API Driven MicroservicesChris Munns
 
Scale permissions management in AWS with attribute-based access control - SDD...
Scale permissions management in AWS with attribute-based access control - SDD...Scale permissions management in AWS with attribute-based access control - SDD...
Scale permissions management in AWS with attribute-based access control - SDD...Amazon Web Services
 
Innovating FIPS crypto validation in the Cloud - SEP321 - AWS re:Inforce 2019
Innovating FIPS crypto validation in the Cloud - SEP321 - AWS re:Inforce 2019 Innovating FIPS crypto validation in the Cloud - SEP321 - AWS re:Inforce 2019
Innovating FIPS crypto validation in the Cloud - SEP321 - AWS re:Inforce 2019 Amazon Web Services
 
Secure and Fast microVM for Serverless Computing using Firecracker
Secure and Fast microVM for Serverless Computing using FirecrackerSecure and Fast microVM for Serverless Computing using Firecracker
Secure and Fast microVM for Serverless Computing using FirecrackerArun Gupta
 
Promuovi il tuo progetto open source
Promuovi il tuo progetto open sourcePromuovi il tuo progetto open source
Promuovi il tuo progetto open sourceAmazon Web Services
 

What's hot (20)

The Future of API Management Is Serverless
The Future of API Management Is ServerlessThe Future of API Management Is Serverless
The Future of API Management Is Serverless
 
Serverless APIs and you
Serverless APIs and youServerless APIs and you
Serverless APIs and you
 
How to truly delegate within an account with permission boundaries - SEC301 -...
How to truly delegate within an account with permission boundaries - SEC301 -...How to truly delegate within an account with permission boundaries - SEC301 -...
How to truly delegate within an account with permission boundaries - SEC301 -...
 
AWS SSA Webinar 4 - Building out your multi-account infrastructure
AWS SSA Webinar 4 - Building out your multi-account infrastructureAWS SSA Webinar 4 - Building out your multi-account infrastructure
AWS SSA Webinar 4 - Building out your multi-account infrastructure
 
What can you do with Serverless in 2020
What can you do with Serverless in 2020What can you do with Serverless in 2020
What can you do with Serverless in 2020
 
Accelerating Cloud Adoption in Federal Government and Regulated Sectors with ...
Accelerating Cloud Adoption in Federal Government and Regulated Sectors with ...Accelerating Cloud Adoption in Federal Government and Regulated Sectors with ...
Accelerating Cloud Adoption in Federal Government and Regulated Sectors with ...
 
ArmadaJS - how to build a full-stack airline ticketing web app
ArmadaJS - how to build a full-stack airline ticketing web appArmadaJS - how to build a full-stack airline ticketing web app
ArmadaJS - how to build a full-stack airline ticketing web app
 
20200513 Getting started with AWS Amplify
20200513   Getting started with AWS Amplify20200513   Getting started with AWS Amplify
20200513 Getting started with AWS Amplify
 
e커머스 통합운영 자동화 사례 및 보안강화 방안 - 양수연 상무, 삼성SDS / 임선진 팀장, 삼성SDS :: AWS Summit Seou...
e커머스 통합운영 자동화 사례 및 보안강화 방안 - 양수연 상무, 삼성SDS / 임선진 팀장, 삼성SDS :: AWS Summit Seou...e커머스 통합운영 자동화 사례 및 보안강화 방안 - 양수연 상무, 삼성SDS / 임선진 팀장, 삼성SDS :: AWS Summit Seou...
e커머스 통합운영 자동화 사례 및 보안강화 방안 - 양수연 상무, 삼성SDS / 임선진 팀장, 삼성SDS :: AWS Summit Seou...
 
AWS CAF come aiutare la tua azienda ad adottare con successo il Cloud AWS
AWS CAF come aiutare la tua azienda ad adottare con successo il Cloud AWSAWS CAF come aiutare la tua azienda ad adottare con successo il Cloud AWS
AWS CAF come aiutare la tua azienda ad adottare con successo il Cloud AWS
 
No Hassle NoSQL - Amazon DynamoDB & Amazon DocumentDB | AWS Summit Tel Aviv ...
 No Hassle NoSQL - Amazon DynamoDB & Amazon DocumentDB | AWS Summit Tel Aviv ... No Hassle NoSQL - Amazon DynamoDB & Amazon DocumentDB | AWS Summit Tel Aviv ...
No Hassle NoSQL - Amazon DynamoDB & Amazon DocumentDB | AWS Summit Tel Aviv ...
 
Module 6-Serverless-GraphQL-API
Module 6-Serverless-GraphQL-APIModule 6-Serverless-GraphQL-API
Module 6-Serverless-GraphQL-API
 
APN-live-hk-opening
APN-live-hk-openingAPN-live-hk-opening
APN-live-hk-opening
 
Favorire l'innovazione passando da applicazioni monolitiche ad architetture m...
Favorire l'innovazione passando da applicazioni monolitiche ad architetture m...Favorire l'innovazione passando da applicazioni monolitiche ad architetture m...
Favorire l'innovazione passando da applicazioni monolitiche ad architetture m...
 
Hands-on with AWS Security Hub - FND213-R - AWS re:Inforce 2019
 Hands-on with AWS Security Hub - FND213-R - AWS re:Inforce 2019  Hands-on with AWS Security Hub - FND213-R - AWS re:Inforce 2019
Hands-on with AWS Security Hub - FND213-R - AWS re:Inforce 2019
 
Building API Driven Microservices
Building API Driven MicroservicesBuilding API Driven Microservices
Building API Driven Microservices
 
Scale permissions management in AWS with attribute-based access control - SDD...
Scale permissions management in AWS with attribute-based access control - SDD...Scale permissions management in AWS with attribute-based access control - SDD...
Scale permissions management in AWS with attribute-based access control - SDD...
 
Innovating FIPS crypto validation in the Cloud - SEP321 - AWS re:Inforce 2019
Innovating FIPS crypto validation in the Cloud - SEP321 - AWS re:Inforce 2019 Innovating FIPS crypto validation in the Cloud - SEP321 - AWS re:Inforce 2019
Innovating FIPS crypto validation in the Cloud - SEP321 - AWS re:Inforce 2019
 
Secure and Fast microVM for Serverless Computing using Firecracker
Secure and Fast microVM for Serverless Computing using FirecrackerSecure and Fast microVM for Serverless Computing using Firecracker
Secure and Fast microVM for Serverless Computing using Firecracker
 
Promuovi il tuo progetto open source
Promuovi il tuo progetto open sourcePromuovi il tuo progetto open source
Promuovi il tuo progetto open source
 

Similar to Simplify front end apps.pdf

"Integrate your front end apps with serverless backend in the cloud", Sebasti...
"Integrate your front end apps with serverless backend in the cloud", Sebasti..."Integrate your front end apps with serverless backend in the cloud", Sebasti...
"Integrate your front end apps with serverless backend in the cloud", Sebasti...Provectus
 
GraphQL backend with AWS AppSync & AWS Lambda
GraphQL backend with AWS AppSync & AWS LambdaGraphQL backend with AWS AppSync & AWS Lambda
GraphQL backend with AWS AppSync & AWS LambdaAleksandr Maklakov
 
Amplifying fullstack serverless apps with AppSync & the Amplify Framework - M...
Amplifying fullstack serverless apps with AppSync & the Amplify Framework - M...Amplifying fullstack serverless apps with AppSync & the Amplify Framework - M...
Amplifying fullstack serverless apps with AppSync & the Amplify Framework - M...Amazon Web Services
 
Solution-Lab-Serverless-Web-Application
Solution-Lab-Serverless-Web-ApplicationSolution-Lab-Serverless-Web-Application
Solution-Lab-Serverless-Web-ApplicationAmazon Web Services
 
Progetta, crea e gestisci Modern Application per web e mobile su AWS
Progetta, crea e gestisci Modern Application per web e mobile su AWSProgetta, crea e gestisci Modern Application per web e mobile su AWS
Progetta, crea e gestisci Modern Application per web e mobile su AWSAmazon Web Services
 
Build secure, offline, real-time-enabled mobile apps - MAD304 - Atlanta AWS S...
Build secure, offline, real-time-enabled mobile apps - MAD304 - Atlanta AWS S...Build secure, offline, real-time-enabled mobile apps - MAD304 - Atlanta AWS S...
Build secure, offline, real-time-enabled mobile apps - MAD304 - Atlanta AWS S...Amazon Web Services
 
AWS Summit Singapore 2019 | Mobile Apps that Engage Users and React in Real-Time
AWS Summit Singapore 2019 | Mobile Apps that Engage Users and React in Real-TimeAWS Summit Singapore 2019 | Mobile Apps that Engage Users and React in Real-Time
AWS Summit Singapore 2019 | Mobile Apps that Engage Users and React in Real-TimeAmazon Web Services
 
Websites go Serverless - AWS Summit Berlin
Websites go Serverless - AWS Summit BerlinWebsites go Serverless - AWS Summit Berlin
Websites go Serverless - AWS Summit BerlinBoaz Ziniman
 
AWS Summit Singapore 2019 | AWS Techfest Opening Keynote
AWS Summit Singapore 2019 | AWS Techfest Opening KeynoteAWS Summit Singapore 2019 | AWS Techfest Opening Keynote
AWS Summit Singapore 2019 | AWS Techfest Opening KeynoteAWS Summits
 
Frontend and Mobile with AWS Amplify | AWS Summit Tel Aviv 2019
Frontend and Mobile with AWS Amplify | AWS Summit Tel Aviv 2019Frontend and Mobile with AWS Amplify | AWS Summit Tel Aviv 2019
Frontend and Mobile with AWS Amplify | AWS Summit Tel Aviv 2019AWS Summits
 
Frontend and Mobile with AWS Amplify | AWS Summit Tel Aviv 2019
Frontend and Mobile with AWS Amplify | AWS Summit Tel Aviv 2019Frontend and Mobile with AWS Amplify | AWS Summit Tel Aviv 2019
Frontend and Mobile with AWS Amplify | AWS Summit Tel Aviv 2019Amazon Web Services
 
How to build a FullStack Airline Ticketing Web App.pdf
How to build a FullStack Airline Ticketing Web App.pdfHow to build a FullStack Airline Ticketing Web App.pdf
How to build a FullStack Airline Ticketing Web App.pdfAmazon Web Services
 
Initiate Edinburgh 2019 - Moving to DevOps the Amazon Way
Initiate Edinburgh 2019 - Moving to DevOps the Amazon WayInitiate Edinburgh 2019 - Moving to DevOps the Amazon Way
Initiate Edinburgh 2019 - Moving to DevOps the Amazon WayAmazon Web Services
 
Tools for building your Startup on AWS
Tools for building your Startup on AWSTools for building your Startup on AWS
Tools for building your Startup on AWSRob De Feo
 
DevOps: The Amazon Way
DevOps: The Amazon WayDevOps: The Amazon Way
DevOps: The Amazon WayAWS Summits
 
AWS Startup Day Bogotá - Tools for Building Your Startup
AWS Startup Day Bogotá - Tools for Building Your StartupAWS Startup Day Bogotá - Tools for Building Your Startup
AWS Startup Day Bogotá - Tools for Building Your StartupAmazon Web Services LATAM
 
Why serverless will revolutionize your software process.
Why serverless will revolutionize your software process.Why serverless will revolutionize your software process.
Why serverless will revolutionize your software process.James Beswick
 
Build your APPs in Lean and Agile Way using AWS Amplify
Build your APPs in Lean and Agile Way using AWS AmplifyBuild your APPs in Lean and Agile Way using AWS Amplify
Build your APPs in Lean and Agile Way using AWS AmplifyAmazon Web Services
 

Similar to Simplify front end apps.pdf (20)

"Integrate your front end apps with serverless backend in the cloud", Sebasti...
"Integrate your front end apps with serverless backend in the cloud", Sebasti..."Integrate your front end apps with serverless backend in the cloud", Sebasti...
"Integrate your front end apps with serverless backend in the cloud", Sebasti...
 
GraphQL backend with AWS AppSync & AWS Lambda
GraphQL backend with AWS AppSync & AWS LambdaGraphQL backend with AWS AppSync & AWS Lambda
GraphQL backend with AWS AppSync & AWS Lambda
 
Amplifying fullstack serverless apps with AppSync & the Amplify Framework - M...
Amplifying fullstack serverless apps with AppSync & the Amplify Framework - M...Amplifying fullstack serverless apps with AppSync & the Amplify Framework - M...
Amplifying fullstack serverless apps with AppSync & the Amplify Framework - M...
 
Solution-Lab-Serverless-Web-Application
Solution-Lab-Serverless-Web-ApplicationSolution-Lab-Serverless-Web-Application
Solution-Lab-Serverless-Web-Application
 
Progetta, crea e gestisci Modern Application per web e mobile su AWS
Progetta, crea e gestisci Modern Application per web e mobile su AWSProgetta, crea e gestisci Modern Application per web e mobile su AWS
Progetta, crea e gestisci Modern Application per web e mobile su AWS
 
Build secure, offline, real-time-enabled mobile apps - MAD304 - Atlanta AWS S...
Build secure, offline, real-time-enabled mobile apps - MAD304 - Atlanta AWS S...Build secure, offline, real-time-enabled mobile apps - MAD304 - Atlanta AWS S...
Build secure, offline, real-time-enabled mobile apps - MAD304 - Atlanta AWS S...
 
AWS Summit Singapore 2019 | Mobile Apps that Engage Users and React in Real-Time
AWS Summit Singapore 2019 | Mobile Apps that Engage Users and React in Real-TimeAWS Summit Singapore 2019 | Mobile Apps that Engage Users and React in Real-Time
AWS Summit Singapore 2019 | Mobile Apps that Engage Users and React in Real-Time
 
Websites go Serverless - AWS Summit Berlin
Websites go Serverless - AWS Summit BerlinWebsites go Serverless - AWS Summit Berlin
Websites go Serverless - AWS Summit Berlin
 
AWS Initiate - DevOps do Jeito Amazon
AWS Initiate - DevOps do Jeito AmazonAWS Initiate - DevOps do Jeito Amazon
AWS Initiate - DevOps do Jeito Amazon
 
AWS Summit Singapore 2019 | AWS Techfest Opening Keynote
AWS Summit Singapore 2019 | AWS Techfest Opening KeynoteAWS Summit Singapore 2019 | AWS Techfest Opening Keynote
AWS Summit Singapore 2019 | AWS Techfest Opening Keynote
 
Frontend and Mobile with AWS Amplify | AWS Summit Tel Aviv 2019
Frontend and Mobile with AWS Amplify | AWS Summit Tel Aviv 2019Frontend and Mobile with AWS Amplify | AWS Summit Tel Aviv 2019
Frontend and Mobile with AWS Amplify | AWS Summit Tel Aviv 2019
 
Frontend and Mobile with AWS Amplify | AWS Summit Tel Aviv 2019
Frontend and Mobile with AWS Amplify | AWS Summit Tel Aviv 2019Frontend and Mobile with AWS Amplify | AWS Summit Tel Aviv 2019
Frontend and Mobile with AWS Amplify | AWS Summit Tel Aviv 2019
 
Moving to DevOps the Amazon Way
Moving to DevOps the Amazon WayMoving to DevOps the Amazon Way
Moving to DevOps the Amazon Way
 
How to build a FullStack Airline Ticketing Web App.pdf
How to build a FullStack Airline Ticketing Web App.pdfHow to build a FullStack Airline Ticketing Web App.pdf
How to build a FullStack Airline Ticketing Web App.pdf
 
Initiate Edinburgh 2019 - Moving to DevOps the Amazon Way
Initiate Edinburgh 2019 - Moving to DevOps the Amazon WayInitiate Edinburgh 2019 - Moving to DevOps the Amazon Way
Initiate Edinburgh 2019 - Moving to DevOps the Amazon Way
 
Tools for building your Startup on AWS
Tools for building your Startup on AWSTools for building your Startup on AWS
Tools for building your Startup on AWS
 
DevOps: The Amazon Way
DevOps: The Amazon WayDevOps: The Amazon Way
DevOps: The Amazon Way
 
AWS Startup Day Bogotá - Tools for Building Your Startup
AWS Startup Day Bogotá - Tools for Building Your StartupAWS Startup Day Bogotá - Tools for Building Your Startup
AWS Startup Day Bogotá - Tools for Building Your Startup
 
Why serverless will revolutionize your software process.
Why serverless will revolutionize your software process.Why serverless will revolutionize your software process.
Why serverless will revolutionize your software process.
 
Build your APPs in Lean and Agile Way using AWS Amplify
Build your APPs in Lean and Agile Way using AWS AmplifyBuild your APPs in Lean and Agile Way using AWS Amplify
Build your APPs in Lean and Agile Way using AWS Amplify
 

More from Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsAmazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareAmazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSAmazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAmazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareAmazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 

More from Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 

Simplify front end apps.pdf

  • 1. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. 03.04.2019 O S L O
  • 2. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Simplify your Web & Mobile apps with cloud-based serverless backends Sébastien Stormacq, Technical Evangelist M A D 3 O S L O 03.04.2019 { "name": "Sébastien Stormacq", "role": ”Technical Evangelist", "company": "Amazon Web Services”, "twitter": "@sebsto”, “github” : "sebsto" }
  • 3. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. A typical day in developer life
  • 4. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. We need an app to let our customers update preference settings – our competitors just launched the same thing, so I need it fast. I don’t want to pay a lot for it, especially when no one is using it. But remember that we’re growing, so make sure it scales great and is easy to manage and operate. And you’re on your own – sorry! A typical day in developer life
  • 5. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. We need an app to let our customers update preference settings – our competitors just launched the same thing, so I need it fast. I don’t want to pay a lot for it, especially when no one is using it. But remember that we’re growing, so make sure it scales great and is easy to manage and operate. And you’re on your own – sorry! A typical day in developer life No problem, I will use a cloud-based & serverless backend.
  • 6. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 7. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Serverless means
  • 8. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Serverless means No Server to Provision or Manage Scale with Usage Availability and Fault Tolerance Built-in Pay for value
  • 9. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Serverless across the stack Database AccessCompute Developer Workflow
  • 10. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. What obstacles developers are facing?
  • 11. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. 165+ services TECHNICAL & BUSINESS SUPPORT Support Professional Services Optimization Guidance Partner Ecosystem Training & Certification Solutions Management Account Management Security & Billing Reports Personalized Dashboard MARKETPLACE Business Apps Business Intelligence DevOps Tools Security Networking StorageDatabases IoT Rules Engine Device Shadows Device SDKs Device Gateway Registry Local Compute MIGRATION Schema Conversion Exabyte-Scale Data Migration Application Migration Database Migration Server Migration HYBRID Integrated Networking Data Integration Integrated Identity & Access Integrated Resource & Deployment Management Integrated Devices & Edge Systems ML / IA Custom Model Training & Hosting Conversational Chatbots Image & Scene Recognition Facial Recognition & Analysis Deep Learning (Apache MXNet, TensorFlow, & others) Text to Speech Facial Search ENTERPRISE Virtual Desktops App Streaming Sharing & Collaboration Corporate Email Communications Contact Center MOBILE API Gateway Single Integrated Console Identity Sync Mobile Analytics Mobile App Testing Targeted Push Notifications DEV/OPS One-click App Deployment DevOps Resource Management Application Lifecycle Management Containers Triggers Resource Templates Build and Test Analyze and Debug Patching ANALYTICS Data Warehousing Business Intelligence Elasticsearch Hadoop/Spark Data Pipelines Streaming Data Collection ETL Streaming Data Analysis Interactive SQL Queries APP SERVICES Queuing & Notifications Workflow Email Transcoding Search INFRA Regions Availability Zones Points of Presence CORE SERVICES Compute VMs, Auto-scaling, Load Balancing, Containers, Virtual Private Servers, Batch Computing, Cloud Functions, Elastic GPUs, Edge Computing Storage Object, Blocks, File, Archivals, Import/Export, Exabyte-scale data transfer CDN Databases Relational, NoSQL, Caching, Migration, PostgreSQL compatible Networking VPC, DX, DNS SECURITY & COMPLIANCE Identity Management Key Management & Storage Monitoring & Logs Configuration Compliance Web Application Firewall Assessment & Reporting Resource & Usage Auditing Access Control Account Grouping DDOS Protection MANAGEMENT TOOLS Monitoring Manage Resources Resource Templates Configuration Tracking Server Management Service Catalogue
  • 12. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Many lines of boiler plate code
  • 13. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Introducing AWS Amplify
  • 14. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amplify – a CLI to Provision Services $ amplify add auth $ amplify add storage $ amplify add api $ amplify push Add an Amazon Cognito User Pool Create and secure an Amazon S3 bucket Add an AWS AppSync or API Gateway Deploy via AWS CloudFormation
  • 15. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amplify – A Set of Open-Source Libraries
  • 16. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Let’s enrich a React web app
  • 17. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Initialise amplify $ amplify init $ amplify push
  • 18. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. #1 add authentication
  • 19. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Provision the service $ amplify add auth $ amplify push
  • 20. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Modify our App import Amplify from 'aws-amplify’; import { withAuthenticator } from 'aws-amplify-react’; // 'aws-amplify-react-native'; import awsmobile from './aws-exports’; Amplify.configure(awsmobile); … export default withAuthenticator(App);
  • 21. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Demo
  • 22. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. $ amplify add auth && amplify push AWS Cloud Clients AWS Cognito User Pool Accounts Multi Factor Authentication Signup & Signin
  • 23. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. #2 add an API
  • 24. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. https://2018.stateofjs.com/data-layer/overview
  • 25. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. query GetNote { getNote(id: ”1”) { id value } } mutation CreateNote { createNote(value: “My first note”) { id value } } subscription OnCreateNote { onCreateNote { id value } } GraphQL, a query language for APIs type Note { id: ID! value: String! }
  • 26. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. AppSync, a runtime to execute the query query GetPost { getPosts(id: ”1”) { id title comments { content } author { name } } } query GetPost { getPosts(id: ”1”) { id title comments { content } author { name } } } Amazon EC2 { "data" : { "posts" : [ { "id" : 1, "title" : "Introduction to GraphQL", "comments" : [ { "content" : "I want GraphQL for my next App!" } ], "author" : { "name" : "Sébastien Stormacq" } } ] } } Amazon DynamoDB AWS Lambda
  • 27. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Provision the API $ amplify add api $ amplify push
  • 28. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. $ amplify add api $ amplify add api ? Please select from one of the below mentioned services GraphQL ? Provide API name: amplifynotes ? Choose an authorization type for the API Amazon Cognito User Pool Using service: Cognito, provided by: awscloudformation The current configured provider is Amazon Cognito. ? Do you want to use the default authentication and security configuration? Yes, use the default configuration. Successfully added auth resource ? Do you have an annotated GraphQL schema? No ? Do you want a guided schema creation? true ? What best describes your project: Objects with fine-grained access control (e.g., a project management app with owner-based authorization) ? Do you want to edit the schema now? Yes Please edit the file in your editor: /<path>/amplify/backend/api/amplifynotes/schema.graphql ? Press enter to continue
  • 29. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. A basic schema type Note { id: ID! note: String! }
  • 30. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Transformers (aka annotations) type Note @model @auth(rules: [{allow: owner}]){ id: ID! note: String! }
  • 31. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Demo
  • 32. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. $ amplify add api & @model AWS Cloud Clients AWS AppSync Amazon DynamoDB Table Schemas Resolvers Data Sources type Query { getNote(...): Note listNotes(...): Note } type Mutation { createNote(...): Note updateNote(...): Note deleteNote(...): Note } type Subscription { onCreateNote (...): Note onUpdateNote (...): Note onDeleteNotet(...): Note } type Note { id: ID! value: String } queries mutations getNote listNotes updateNote deleteNote createNote Note Table Datasource IAM Role ARN Note Role ARN
  • 33. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. #3 add search capability
  • 34. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Update GraphQL Transformer type Note @model @auth(rules: [{allow: owner}]) @searchable { id: ID! note: String! }
  • 35. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Provision the service $ amplify push
  • 36. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Demo
  • 37. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. @searchable AWS Cloud Clients AWS AppSync Amazon DynamoDB Table Schemas Resolvers Data Sources queries mutations getNote listNotes updateNote deleteNote createNote Note Table Datasource IAM Role ARN Note Role ARN type Query { getNote(...): Note listNotes(...): Note } type Mutation { createNote(...): Note updateNote(...): Note deleteNote(...): Note } type Subscription { onCreateNote (...): Note onUpdateNote (...): Note onDeleteNotet(...): Note } type Note { id: ID! value: String }
  • 38. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. @searchable AWS Cloud Clients AWS AppSync Document Index Amazon ElasticSearch Schemas Resolvers Data Sources type Query { getNote(...): Note listNotes(...): Note searchNotes(...): [Note] } type Mutation { createNote(...): Note updateNote(...): Note deleteNote(...): Note } type Subscription { onCreateNote (...): Note onUpdateNote (...): Note onDeleteNotet(...): Note } type Note { id: ID! value: String } queries mutations getNote listNotes updateNote deleteNote createNote ElasticSearch Datasource IAM Role ARN ES Domain ARN Streaming Lambda Note Table Datasource IAM Role ARN Note Role ARN searchNotes Amazon DynamoDB Table
  • 39. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. #4 deploy the app
  • 40. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Provision the service $ amplify add hosting $ amplify publish
  • 41. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. amplify add hosting $ amplify add hosting ? Select the environment setup: DEV (S3 only with HTTP) ? hosting bucket name my_hosting_bucket ? index doc for the website index.html ? error doc for the website index.html
  • 42. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Demo
  • 43. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. amplify publish (dev) AWS Cloud Clients Amazon Cloudfront Amazon S3 Bucket serving static web content Edge Locations
  • 44. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. amplify publish (prod) AWS Cloud Clients Amazon Cloudfront Amazon S3 Bucket serving static web content Edge Locations
  • 45. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Advanced Topics
  • 46. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amplify black belt tips ! $ amplify checkout ENV $ amplify add ENV
  • 47. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amplify black belt tips !
  • 48. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amplify black belt tips !
  • 49. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. What did we just do ? We created a front end web app backed by cloud services • User Sign-in, Sign-up (Amazon Cognito) • CRUD GraphQL API (AWS AppSync + Amazon DynamoDB) • Search API (Amazon ElasticSearch) • Hosting (Amazon S3, Amazon CloudFront) https://github.com/sebsto/amplify-react-workshop
  • 50. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Take Away
  • 51. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Thank you! © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Sébastien Stormacq, Technical Evangelist { "name": "Sébastien Stormacq", "role": ”Technical Evangelist", "company": "Amazon Web Services”, "twitter": "@sebsto”, “github” : "sebsto" }
  • 52. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Please complete the session survey in the mobile app. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.