SlideShare a Scribd company logo
1 of 107
Download to read offline
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved.
Cloud Firestore
for XXX application
October 27, 2017
Firebase meet up
Chiangmai 2017
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 2
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 3
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 4
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 5
Beta release !!
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 6
Cloud Firestore
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 7
Basic of Firestore
New document database for app
developers
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 8
RDBMS vs Document
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 9
RDBMS vs Document
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 10
RDBMS vs Document
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 11
Basic of Firestore
New document database for app
developers
For mobile and web development
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 12
Basic of Firestore
New document database for app
developers
For mobile and web development
Easily and sync at the global scale
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 13
Key features
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 14
Key features
Documents and collections with powerful
querying
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 15
Key features
Documents and collections with powerful
querying
Offline data access (mobile and web)
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 16
Key features
Documents and collections with powerful
querying
Realtime data sync
Offline data access (mobile and web)
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 17
Key features
Documents and collections with powerful
querying
Realtime data sync
Automatic, multi-region replication
Offline data access (mobile and web)
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 18
Key features
Documents and collections with powerful
querying
Offline data access (mobile and web)
Realtime data sync
Automatic, multi-region replication
Node, Python, Go, Java
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 19
Key features
Integrate with Firebase Platform
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 20
Key features
Integrate with Firebase Platform
Cloud Function and Firebase Authentication
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 21
Replacing
Firebase Realtime Database ?
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 22
No
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 23
Usecase !!
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 24
What’s different with
Cloud Firestore ?
https://firebase.google.com/docs/firestore/rtdb-vs-firestore
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 25
Better query and more data
structure
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 26
Collections
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 27
Subcollections
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 28
All queries are shadow
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 29
Automatic build an index
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 30
Make easy to search across
multiple field
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 31
Queries scale to the size of your
result set
(not the size of your data)
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 32
Pricing model !!
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 33
Realtime database based on
size of data
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 34
Cloud Firestore based on
the number of reads or writes
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 35
What’s your use case ?
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 36
Use both database together
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 37
Create my Collection
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 38
https://www.facebook.com/pg/namtonshousebar
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 39
Beer Document
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 40
Let’s start at Firebase console
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 41
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 42
Beer Collection
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 43
First document with Go To IPA
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 44
Result
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 45
My Beer Application
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 46
$firebase init
$npm install -g firebase-tools
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 47
$firebase open auth
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 48
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 49
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 50
Add Firebase to app
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 51
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 52
For web app
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 53
Manage security rules
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 54
Manage security rules
Everyone can read and write !!
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 55
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 56
Need to update the security rules
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 57
$firebase deploy --only firestore:rules
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 58
$firebase deploy --only firestore:rules
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 59
Manage security rules
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 60
Add new beer
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 61
Add new beer without brewer
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 62
Add new beer without brewer
const db = firebase.firestore();
const beer = {
beerName: this.state.beerName,
alcohol: this.state.alcohol,
price: this.state.price
}
db.collection(“beer").add(beer)
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 63
View data in Firebase console
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 64
Read all beer
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 65
Read all beer
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 66
Read all beer
let allBeer = []
const db = firebase.firestore()

db.collection("beer").get()

.then((querySnapshot) => {

querySnapshot.forEach((doc) => {
allBeer.push(doc.data())
})

})
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 67
Read beer by ID
let allBeer = []
const db = firebase.firestore()

db.collection(“beer").doc("ID")get()

.then((querySnapshot) => {

})
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 68
Delete beer by ID
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 69
Delete beer by ID
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 70
Delete beer by ID
const db = firebase.firestore()
db.collection("beer").doc(`${beerId}`).delete()
.then(function() {
console.log(`${beerId}`)
}).catch(function(error) {
console.error(error);
});
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 71
We need more features
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 72
Ordering data
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 73
Order by name
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 74
Order by name
const db = firebase.firestore()
db.collection("beer")
.orderBy('beerName', 'desc').get()
.then((querySnapshot) => {
})
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 75
Order by name and price
const db = firebase.firestore()

db.collection("beer")
.orderBy('beerName', 'desc')
.orderBy('price', 'asc').get()
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 76
Error !!
Need to add a index !!
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 77
Add new index
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 78
Add new index
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 79
Order by name and price
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 80
Limit number of data
const db = firebase.firestore()

db.collection("beer")
.orderBy('beerName', 'desc')
.orderBy('price', 'asc').limit(2).get()
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 81
Filter data by conditions
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 82
Filter data with where()
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 83
Filter data with where()
const db = firebase.firestore();
db.collection(“beer")
.where("beerName", "==", this.state.searchWord)
.get()
.then((querySnapshot) => {
querySnapshot.forEach((doc) => {
allBeer.push(doc)
})
})
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 84
Full text search
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 85
(Cloud Firestore not support !!)
Full text search
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 86
(need 3-party library)
Full text search
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 87
Structure of data
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 88
Structure of data
Nested data in documents
Subcollections
Root-level collections
https://cloud.google.com/firestore/docs/concepts/structure-data
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 89
Nested data in document
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 90
Subcollections
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 91
Root-level collections
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 92
Let’ s design your data model
(most important)
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 93
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 94
Add brewer in each beer
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 95
Working with Subcollection
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 96
Working with Subcollection
//1. Create beer document
const beer = {
beerName: this.state.beerName,
alcohol: this.state.alcohol,
price: this.state.price
}
db.collection("beer").add(beer)
.then(function(beerDocument) {

//2. Add brewer to beer
const mockBrewery = [
{ name: "Stone" },
{ name: "Thai Local"}
]
beerDocument.collection("brewery")

.add(mockBrewery[id])
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 97
Working with Subcollection
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 98
Working with Subcollection
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 99
And more …
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 100
Secure data
Working with Cloud Function
Working with Transaction & Batching
Sync data
Offline mode
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 101
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 102
Resources
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 103
Demo
https://github.com/up1/demo-cloud-firestore
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 104
Resources
https://codelabs.developers.google.com/
codelabs/firestore-web
https://cloud.google.com/firestore
https://codelabs.developers.google.com/
codelabs/firestore-android/
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 105
Firebase meet up Chiangmai 2017
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 106
© 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 107

More Related Content

Similar to SCK Firestore at CNX

Similar to SCK Firestore at CNX (20)

Visual testing
Visual testingVisual testing
Visual testing
 
Lesson learned from React native and Flutter
Lesson learned from React native and FlutterLesson learned from React native and Flutter
Lesson learned from React native and Flutter
 
vTalk#1 Microservices with Spring Boot
vTalk#1 Microservices with Spring BootvTalk#1 Microservices with Spring Boot
vTalk#1 Microservices with Spring Boot
 
Joachim Heinz at the Corporate Startup Summit 2017
Joachim Heinz at the Corporate Startup Summit 2017Joachim Heinz at the Corporate Startup Summit 2017
Joachim Heinz at the Corporate Startup Summit 2017
 
Launch Applications the Amazon Way - AWS Online Tech Talks
Launch Applications the Amazon Way - AWS Online Tech TalksLaunch Applications the Amazon Way - AWS Online Tech Talks
Launch Applications the Amazon Way - AWS Online Tech Talks
 
SPUnite17 Transforming your Organisation into a Digital Workplace
SPUnite17 Transforming your Organisation into a Digital WorkplaceSPUnite17 Transforming your Organisation into a Digital Workplace
SPUnite17 Transforming your Organisation into a Digital Workplace
 
Digital Velocity London 2017: Mobile, IOT, Cloud
Digital Velocity London 2017: Mobile, IOT, CloudDigital Velocity London 2017: Mobile, IOT, Cloud
Digital Velocity London 2017: Mobile, IOT, Cloud
 
ThreadFix 2.5 Webinar
ThreadFix 2.5 WebinarThreadFix 2.5 Webinar
ThreadFix 2.5 Webinar
 
Fundamental Techniques for Search Engines Successes
Fundamental Techniques for Search Engines SuccessesFundamental Techniques for Search Engines Successes
Fundamental Techniques for Search Engines Successes
 
Containers on AWS - State of the Union - CON201 - re:Invent 2017
Containers on AWS - State of the Union - CON201 - re:Invent 2017Containers on AWS - State of the Union - CON201 - re:Invent 2017
Containers on AWS - State of the Union - CON201 - re:Invent 2017
 
From Cloud Cost Management to Financial Agility: The Journey to Success - ENT...
From Cloud Cost Management to Financial Agility: The Journey to Success - ENT...From Cloud Cost Management to Financial Agility: The Journey to Success - ENT...
From Cloud Cost Management to Financial Agility: The Journey to Success - ENT...
 
Elevate Your Application Security Program with Burp Suite and ThreadFix
Elevate Your Application Security Program with Burp Suite and ThreadFix Elevate Your Application Security Program with Burp Suite and ThreadFix
Elevate Your Application Security Program with Burp Suite and ThreadFix
 
Building the Organisation of the Future: Leveraging Artificial Intelligence a...
Building the Organisation of the Future: Leveraging Artificial Intelligence a...Building the Organisation of the Future: Leveraging Artificial Intelligence a...
Building the Organisation of the Future: Leveraging Artificial Intelligence a...
 
AEM DataLayer IMMERSE 2017 Presentation by Dan Klco
AEM DataLayer IMMERSE 2017 Presentation by Dan KlcoAEM DataLayer IMMERSE 2017 Presentation by Dan Klco
AEM DataLayer IMMERSE 2017 Presentation by Dan Klco
 
Pick a Winner: How to Choose a Data Warehouse
Pick a Winner: How to Choose a Data WarehousePick a Winner: How to Choose a Data Warehouse
Pick a Winner: How to Choose a Data Warehouse
 
Getting Started with AWS for Develoeprs
Getting Started with AWS for DeveloeprsGetting Started with AWS for Develoeprs
Getting Started with AWS for Develoeprs
 
DEV209 A Field Guide to Monitoring in the Cloud: From Lift and Shift to AWS L...
DEV209 A Field Guide to Monitoring in the Cloud: From Lift and Shift to AWS L...DEV209 A Field Guide to Monitoring in the Cloud: From Lift and Shift to AWS L...
DEV209 A Field Guide to Monitoring in the Cloud: From Lift and Shift to AWS L...
 
Google Cloud Platform Tutorial | GCP Fundamentals | Edureka
Google Cloud Platform Tutorial | GCP Fundamentals | EdurekaGoogle Cloud Platform Tutorial | GCP Fundamentals | Edureka
Google Cloud Platform Tutorial | GCP Fundamentals | Edureka
 
Magento Cloud - Introduction
Magento Cloud - IntroductionMagento Cloud - Introduction
Magento Cloud - Introduction
 
Building a content marketing powerhouse - Adobe Summit 2017 Las Vegas
Building a content marketing powerhouse - Adobe Summit 2017 Las VegasBuilding a content marketing powerhouse - Adobe Summit 2017 Las Vegas
Building a content marketing powerhouse - Adobe Summit 2017 Las Vegas
 

More from Somkiat Puisungnoen

More from Somkiat Puisungnoen (19)

devops
devops devops
devops
 
Manage data of service
Manage data of serviceManage data of service
Manage data of service
 
RobotFramework Meetup at Thailand #2
RobotFramework Meetup at Thailand #2RobotFramework Meetup at Thailand #2
RobotFramework Meetup at Thailand #2
 
Cloud Native App
Cloud Native AppCloud Native App
Cloud Native App
 
Sck Agile in Real World
Sck Agile in Real WorldSck Agile in Real World
Sck Agile in Real World
 
Unhappiness Developer
Unhappiness DeveloperUnhappiness Developer
Unhappiness Developer
 
The Beauty of BAD code
The Beauty of  BAD codeThe Beauty of  BAD code
The Beauty of BAD code
 
React in the right way
React in the right wayReact in the right way
React in the right way
 
Rise of Container (RoC)
Rise of Container (RoC)Rise of Container (RoC)
Rise of Container (RoC)
 
SCK :: Scrum is NOT Enough
SCK :: Scrum is NOT EnoughSCK :: Scrum is NOT Enough
SCK :: Scrum is NOT Enough
 
Software Development Trends 2017 at IMC
Software Development Trends 2017 at IMCSoftware Development Trends 2017 at IMC
Software Development Trends 2017 at IMC
 
Design pattern with Java 8
Design pattern with Java 8Design pattern with Java 8
Design pattern with Java 8
 
Meetup :: Update Elastic Stack 5.0
Meetup :: Update Elastic Stack 5.0Meetup :: Update Elastic Stack 5.0
Meetup :: Update Elastic Stack 5.0
 
Git as NoSQL
Git as NoSQLGit as NoSQL
Git as NoSQL
 
DevOps 101
DevOps 101DevOps 101
DevOps 101
 
Sck Mobile Application Security
Sck Mobile Application SecuritySck Mobile Application Security
Sck Mobile Application Security
 
Automation test for Android
Automation test for AndroidAutomation test for Android
Automation test for Android
 
Secure Test-Driven Development
Secure Test-Driven DevelopmentSecure Test-Driven Development
Secure Test-Driven Development
 
Working with branch
Working with branchWorking with branch
Working with branch
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data PlatformLess Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
 
ChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps ProductivityChatGPT and Beyond - Elevating DevOps Productivity
ChatGPT and Beyond - Elevating DevOps Productivity
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Design and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data ScienceDesign and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data Science
 
The Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and InsightThe Zero-ETL Approach: Enhancing Data Agility and Insight
The Zero-ETL Approach: Enhancing Data Agility and Insight
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
 
Simplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxSimplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptx
 

SCK Firestore at CNX

  • 1. © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. Cloud Firestore for XXX application October 27, 2017 Firebase meet up Chiangmai 2017
  • 2. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 2
  • 3. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 3
  • 4. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 4
  • 5. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 5 Beta release !!
  • 6. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 6 Cloud Firestore
  • 7. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 7 Basic of Firestore New document database for app developers
  • 8. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 8 RDBMS vs Document
  • 9. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 9 RDBMS vs Document
  • 10. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 10 RDBMS vs Document
  • 11. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 11 Basic of Firestore New document database for app developers For mobile and web development
  • 12. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 12 Basic of Firestore New document database for app developers For mobile and web development Easily and sync at the global scale
  • 13. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 13 Key features
  • 14. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 14 Key features Documents and collections with powerful querying
  • 15. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 15 Key features Documents and collections with powerful querying Offline data access (mobile and web)
  • 16. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 16 Key features Documents and collections with powerful querying Realtime data sync Offline data access (mobile and web)
  • 17. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 17 Key features Documents and collections with powerful querying Realtime data sync Automatic, multi-region replication Offline data access (mobile and web)
  • 18. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 18 Key features Documents and collections with powerful querying Offline data access (mobile and web) Realtime data sync Automatic, multi-region replication Node, Python, Go, Java
  • 19. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 19 Key features Integrate with Firebase Platform
  • 20. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 20 Key features Integrate with Firebase Platform Cloud Function and Firebase Authentication
  • 21. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 21 Replacing Firebase Realtime Database ?
  • 22. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 22 No
  • 23. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 23 Usecase !!
  • 24. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 24 What’s different with Cloud Firestore ? https://firebase.google.com/docs/firestore/rtdb-vs-firestore
  • 25. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 25 Better query and more data structure
  • 26. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 26 Collections
  • 27. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 27 Subcollections
  • 28. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 28 All queries are shadow
  • 29. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 29 Automatic build an index
  • 30. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 30 Make easy to search across multiple field
  • 31. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 31 Queries scale to the size of your result set (not the size of your data)
  • 32. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 32 Pricing model !!
  • 33. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 33 Realtime database based on size of data
  • 34. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 34 Cloud Firestore based on the number of reads or writes
  • 35. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 35 What’s your use case ?
  • 36. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 36 Use both database together
  • 37. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 37 Create my Collection
  • 38. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 38 https://www.facebook.com/pg/namtonshousebar
  • 39. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 39 Beer Document
  • 40. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 40 Let’s start at Firebase console
  • 41. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 41
  • 42. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 42 Beer Collection
  • 43. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 43 First document with Go To IPA
  • 44. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 44 Result
  • 45. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 45 My Beer Application
  • 46. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 46 $firebase init $npm install -g firebase-tools
  • 47. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 47 $firebase open auth
  • 48. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 48
  • 49. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 49
  • 50. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 50 Add Firebase to app
  • 51. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 51
  • 52. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 52 For web app
  • 53. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 53 Manage security rules
  • 54. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 54 Manage security rules Everyone can read and write !!
  • 55. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 55
  • 56. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 56 Need to update the security rules
  • 57. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 57 $firebase deploy --only firestore:rules
  • 58. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 58 $firebase deploy --only firestore:rules
  • 59. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 59 Manage security rules
  • 60. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 60 Add new beer
  • 61. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 61 Add new beer without brewer
  • 62. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 62 Add new beer without brewer const db = firebase.firestore(); const beer = { beerName: this.state.beerName, alcohol: this.state.alcohol, price: this.state.price } db.collection(“beer").add(beer)
  • 63. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 63 View data in Firebase console
  • 64. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 64 Read all beer
  • 65. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 65 Read all beer
  • 66. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 66 Read all beer let allBeer = [] const db = firebase.firestore()
 db.collection("beer").get()
 .then((querySnapshot) => {
 querySnapshot.forEach((doc) => { allBeer.push(doc.data()) })
 })
  • 67. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 67 Read beer by ID let allBeer = [] const db = firebase.firestore()
 db.collection(“beer").doc("ID")get()
 .then((querySnapshot) => {
 })
  • 68. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 68 Delete beer by ID
  • 69. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 69 Delete beer by ID
  • 70. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 70 Delete beer by ID const db = firebase.firestore() db.collection("beer").doc(`${beerId}`).delete() .then(function() { console.log(`${beerId}`) }).catch(function(error) { console.error(error); });
  • 71. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 71 We need more features
  • 72. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 72 Ordering data
  • 73. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 73 Order by name
  • 74. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 74 Order by name const db = firebase.firestore() db.collection("beer") .orderBy('beerName', 'desc').get() .then((querySnapshot) => { })
  • 75. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 75 Order by name and price const db = firebase.firestore()
 db.collection("beer") .orderBy('beerName', 'desc') .orderBy('price', 'asc').get()
  • 76. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 76 Error !! Need to add a index !!
  • 77. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 77 Add new index
  • 78. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 78 Add new index
  • 79. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 79 Order by name and price
  • 80. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 80 Limit number of data const db = firebase.firestore()
 db.collection("beer") .orderBy('beerName', 'desc') .orderBy('price', 'asc').limit(2).get()
  • 81. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 81 Filter data by conditions
  • 82. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 82 Filter data with where()
  • 83. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 83 Filter data with where() const db = firebase.firestore(); db.collection(“beer") .where("beerName", "==", this.state.searchWord) .get() .then((querySnapshot) => { querySnapshot.forEach((doc) => { allBeer.push(doc) }) })
  • 84. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 84 Full text search
  • 85. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 85 (Cloud Firestore not support !!) Full text search
  • 86. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 86 (need 3-party library) Full text search
  • 87. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 87 Structure of data
  • 88. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 88 Structure of data Nested data in documents Subcollections Root-level collections https://cloud.google.com/firestore/docs/concepts/structure-data
  • 89. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 89 Nested data in document
  • 90. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 90 Subcollections
  • 91. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 91 Root-level collections
  • 92. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 92 Let’ s design your data model (most important)
  • 93. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 93
  • 94. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 94 Add brewer in each beer
  • 95. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 95 Working with Subcollection
  • 96. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 96 Working with Subcollection //1. Create beer document const beer = { beerName: this.state.beerName, alcohol: this.state.alcohol, price: this.state.price } db.collection("beer").add(beer) .then(function(beerDocument) {
 //2. Add brewer to beer const mockBrewery = [ { name: "Stone" }, { name: "Thai Local"} ] beerDocument.collection("brewery")
 .add(mockBrewery[id])
  • 97. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 97 Working with Subcollection
  • 98. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 98 Working with Subcollection
  • 99. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 99 And more …
  • 100. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 100 Secure data Working with Cloud Function Working with Transaction & Batching Sync data Offline mode
  • 101. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 101
  • 102. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 102 Resources
  • 103. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 103 Demo https://github.com/up1/demo-cloud-firestore
  • 104. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 104 Resources https://codelabs.developers.google.com/ codelabs/firestore-web https://cloud.google.com/firestore https://codelabs.developers.google.com/ codelabs/firestore-android/
  • 105. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 105
  • 106. Firebase meet up Chiangmai 2017 © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 106
  • 107. © 2017 - 2018 Siam Chamnankit Company Limited. All rights reserved. 107