SlideShare uma empresa Scribd logo
1 de 35
Baixar para ler offline
Alvaro Viebrantz
aviebrantz.com.br
@alvaroviebrantz
FROM ZERO TO APP
Criando uma aplicação com
React e Firebase
✓Envio de texto e imagens
✓One way data flow com React
✓Login social
✓Upload de arquivos com Cloud
Storage
✓Hosting no Firebase
✓Machine Learning !!!
O que vamos fazer
Chat em tempo real
https://github.com/alvarowolfx/friendlychat-react
http://friendlychat-react-f2b83.firebaseapp.com/
3
O que é o React ?
Direto ao que interessa
Just the V of MVC
4
React é apenas uma biblioteca
Criado pelo Facebook em 2013
5
D ATA D O M
f(data) = View
One-way Data Flow
React
Visão funcional
6
Simple and Declarative
A Polêmica - JSX
O que esse HTML tá fazendo no meio do meu Javascript
7
JSX é um “Syntactic Sugar”
No final tudo vira Javascript
8
Tudo é um componente
Com API simples de se entender
9
Tudo é um componente
10
S TAT E
State vs Props
Mutable vs Immutable
What you Own vs What you Won
P R O P S
Fluxo de dados nos componentes
Um pouco do funcionamento interno
• componentWillMount
• render
• componentDidMount
•shouldUpdateComponent
•componentWillUpdate
•render
•componentDidUpdate
• componentWillUnmount
M O U N T U P D AT E U N M O U N T
11
Ciclo de Vida dos componentes
Um pouco do funcionamento interno
12
O React deu uma empurrada na web
Sempre vivendo na risca da lei
13
O React deu uma empurrada na web
Muitos conceitos considerados modernos hoje em dia
14
Traga sua própria arquitetura
Surgiram arquiteturas bastante avançadas por conta disso
15
Create React App
Hoje é mais fácil do que nunca iniciar com React
• Apenas crie o projeto e manda bala
• Babel, Webpack, ESLint, Live Reload, Minify e Uglify
• Apenas uma dependência
• Sem configuração necessária
• Você pode ejetar quando quiser
https://github.com/facebookincubator/create-react-app
16
Let’s code P1
May the demo gods be with us
Develop Grow
Desenvolvendo seu app
Develop Grow
• Cloud-hosted NoSQL database
• Synchronization & conflict
resolution
• Access directly from your app
• Email & password
• Google, Facebook, Twitter, and
GitHub sign-in
• Existing auth systems
• Phone number
Storage
Cloud Messaging
Hosting
26
27
28
Let’s code P2
May the demo gods be with us
Functions
Adicionando Machine Learning à nossa aplicação
Não precisa ser um expert em Machine Learning
Cloud 

Natural Language
Cloud 

Speech
Cloud 

Vision
Cloud Machine Learning APIs
Veja, Ouça e Entenda o mundo
Cloud 

Video Intelligence
Cloud 

Translation
31
Faces
Faces, marcações faciais, emoções
OCR
Ler e extrair texto, com suporte
para > 10 linguagens
Classificação
Detectar entidades de mobília a
meios de transporte
Logos
Identificar logos de produtos
Marcos e Propriedades da
imagem
Busca Segura
Detectar conteúdo explícito - adulto,
violência, médicas e fraudes
Cloud Vision API
Reconhecimento de imagens
32
Extrair frases, identificar partes
da fala e criar uma árvore de
dependências para cada
sentença.
Análise de Sintaxe
Identificar entidades e
classificá-las por tipos, como
pessoa, organização local,
evento, produto e media.
Reconhecimento de entidades
Entender o sentimento
dominante do bloco de texto.
Análise de sentimentos
33
Cloud Natural Language API
Reconhecimento de linguagem natural
34
Let’s code P3
May the demo gods be with us
OBRIGADO !!!
35
Alvaro Viebrantz
aviebrantz.com.br
@alvaroviebrantz
https://github.com/alvarowolfx/friendlychat-react
http://friendlychat-react-f2b83.firebaseapp.com/

Mais conteúdo relacionado

Semelhante a React e Firebase: Criando uma aplicação de chat em tempo real

DevCommerce Conference 2016: React para aplicações web e mobile como platafor...
DevCommerce Conference 2016: React para aplicações web e mobile como platafor...DevCommerce Conference 2016: React para aplicações web e mobile como platafor...
DevCommerce Conference 2016: React para aplicações web e mobile como platafor...iMasters
 
Desenvolvimento Mobile Multiplataforma: Uma abordagem ágil e de alto desempen...
Desenvolvimento Mobile Multiplataforma: Uma abordagem ágil e de alto desempen...Desenvolvimento Mobile Multiplataforma: Uma abordagem ágil e de alto desempen...
Desenvolvimento Mobile Multiplataforma: Uma abordagem ágil e de alto desempen...Criciúma Dev
 
Desenvolvimento HTML5 para Smartphones e Tablets BlackBerry
Desenvolvimento HTML5 para Smartphones e Tablets BlackBerryDesenvolvimento HTML5 para Smartphones e Tablets BlackBerry
Desenvolvimento HTML5 para Smartphones e Tablets BlackBerryfelipebzr
 
#02 - Segundo Meetup React Goiânia
#02 - Segundo Meetup React Goiânia#02 - Segundo Meetup React Goiânia
#02 - Segundo Meetup React GoiâniaGleidson Daniel
 
Construindo Aplicativos móveis conectados com Xamarin e Azure Mobile Services
Construindo Aplicativos móveis conectados com Xamarin e Azure Mobile ServicesConstruindo Aplicativos móveis conectados com Xamarin e Azure Mobile Services
Construindo Aplicativos móveis conectados com Xamarin e Azure Mobile ServicesWilliam S. Rodriguez
 
Mobile apps com Xamarin e Azure Mobile Services - The Developers Conference P...
Mobile apps com Xamarin e Azure Mobile Services - The Developers Conference P...Mobile apps com Xamarin e Azure Mobile Services - The Developers Conference P...
Mobile apps com Xamarin e Azure Mobile Services - The Developers Conference P...William S. Rodriguez
 
Quebrando barreiras entre desenvolvimento e operação de software com DevOps
Quebrando barreiras entre desenvolvimento e operação de software com DevOpsQuebrando barreiras entre desenvolvimento e operação de software com DevOps
Quebrando barreiras entre desenvolvimento e operação de software com DevOpsJosé Alexandre Macedo
 
Criando uma PWA com React para consumir uma API
Criando uma PWA com React para consumir uma APICriando uma PWA com React para consumir uma API
Criando uma PWA com React para consumir uma APIJessica Zanelato Soares
 
Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.Valmir Justo
 
Plugue seu Aplicativo a Nuvem no The Developers Conference, Mobile Cloud Hack...
Plugue seu Aplicativo a Nuvem no The Developers Conference, Mobile Cloud Hack...Plugue seu Aplicativo a Nuvem no The Developers Conference, Mobile Cloud Hack...
Plugue seu Aplicativo a Nuvem no The Developers Conference, Mobile Cloud Hack...William S. Rodriguez
 
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...Fabrício Lopes Sanchez
 
Plugue seu Aplicativo a Nuvem no The Developers Conference, Florianópolis 2016
Plugue seu Aplicativo  a Nuvem no The Developers Conference, Florianópolis 2016Plugue seu Aplicativo  a Nuvem no The Developers Conference, Florianópolis 2016
Plugue seu Aplicativo a Nuvem no The Developers Conference, Florianópolis 2016William S. Rodriguez
 
Comparando as Hypes - React & Vue
Comparando as Hypes - React & VueComparando as Hypes - React & Vue
Comparando as Hypes - React & VueHerbert Henrique
 
Itajai .NET React Native
Itajai .NET React NativeItajai .NET React Native
Itajai .NET React NativeLeonardoPrange
 
Introdução ao PhoneGap e Sencha Touch
Introdução ao PhoneGap e Sencha TouchIntrodução ao PhoneGap e Sencha Touch
Introdução ao PhoneGap e Sencha TouchRafael Neri
 
1º Zabbix On The Road - João Pessoa - Zabbix!?!? - Sou Dev, o que eu tenho a ...
1º Zabbix On The Road - João Pessoa - Zabbix!?!? - Sou Dev, o que eu tenho a ...1º Zabbix On The Road - João Pessoa - Zabbix!?!? - Sou Dev, o que eu tenho a ...
1º Zabbix On The Road - João Pessoa - Zabbix!?!? - Sou Dev, o que eu tenho a ...André Déo
 
Protótipos mobile na prática
Protótipos mobile na práticaProtótipos mobile na prática
Protótipos mobile na práticaRichard Jesus
 

Semelhante a React e Firebase: Criando uma aplicação de chat em tempo real (20)

DevCommerce Conference 2016: React para aplicações web e mobile como platafor...
DevCommerce Conference 2016: React para aplicações web e mobile como platafor...DevCommerce Conference 2016: React para aplicações web e mobile como platafor...
DevCommerce Conference 2016: React para aplicações web e mobile como platafor...
 
Mini-curso RoR - Aula 01
Mini-curso RoR - Aula 01Mini-curso RoR - Aula 01
Mini-curso RoR - Aula 01
 
Desenvolvimento Mobile Multiplataforma: Uma abordagem ágil e de alto desempen...
Desenvolvimento Mobile Multiplataforma: Uma abordagem ágil e de alto desempen...Desenvolvimento Mobile Multiplataforma: Uma abordagem ágil e de alto desempen...
Desenvolvimento Mobile Multiplataforma: Uma abordagem ágil e de alto desempen...
 
Desenvolvimento HTML5 para Smartphones e Tablets BlackBerry
Desenvolvimento HTML5 para Smartphones e Tablets BlackBerryDesenvolvimento HTML5 para Smartphones e Tablets BlackBerry
Desenvolvimento HTML5 para Smartphones e Tablets BlackBerry
 
#02 - Segundo Meetup React Goiânia
#02 - Segundo Meetup React Goiânia#02 - Segundo Meetup React Goiânia
#02 - Segundo Meetup React Goiânia
 
#Moving br workshop
#Moving br workshop#Moving br workshop
#Moving br workshop
 
Construindo Aplicativos móveis conectados com Xamarin e Azure Mobile Services
Construindo Aplicativos móveis conectados com Xamarin e Azure Mobile ServicesConstruindo Aplicativos móveis conectados com Xamarin e Azure Mobile Services
Construindo Aplicativos móveis conectados com Xamarin e Azure Mobile Services
 
Mobile apps com Xamarin e Azure Mobile Services - The Developers Conference P...
Mobile apps com Xamarin e Azure Mobile Services - The Developers Conference P...Mobile apps com Xamarin e Azure Mobile Services - The Developers Conference P...
Mobile apps com Xamarin e Azure Mobile Services - The Developers Conference P...
 
Quebrando barreiras entre desenvolvimento e operação de software com DevOps
Quebrando barreiras entre desenvolvimento e operação de software com DevOpsQuebrando barreiras entre desenvolvimento e operação de software com DevOps
Quebrando barreiras entre desenvolvimento e operação de software com DevOps
 
Começando errado com php
Começando errado com phpComeçando errado com php
Começando errado com php
 
Criando uma PWA com React para consumir uma API
Criando uma PWA com React para consumir uma APICriando uma PWA com React para consumir uma API
Criando uma PWA com React para consumir uma API
 
Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.
 
Plugue seu Aplicativo a Nuvem no The Developers Conference, Mobile Cloud Hack...
Plugue seu Aplicativo a Nuvem no The Developers Conference, Mobile Cloud Hack...Plugue seu Aplicativo a Nuvem no The Developers Conference, Mobile Cloud Hack...
Plugue seu Aplicativo a Nuvem no The Developers Conference, Mobile Cloud Hack...
 
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
 
Plugue seu Aplicativo a Nuvem no The Developers Conference, Florianópolis 2016
Plugue seu Aplicativo  a Nuvem no The Developers Conference, Florianópolis 2016Plugue seu Aplicativo  a Nuvem no The Developers Conference, Florianópolis 2016
Plugue seu Aplicativo a Nuvem no The Developers Conference, Florianópolis 2016
 
Comparando as Hypes - React & Vue
Comparando as Hypes - React & VueComparando as Hypes - React & Vue
Comparando as Hypes - React & Vue
 
Itajai .NET React Native
Itajai .NET React NativeItajai .NET React Native
Itajai .NET React Native
 
Introdução ao PhoneGap e Sencha Touch
Introdução ao PhoneGap e Sencha TouchIntrodução ao PhoneGap e Sencha Touch
Introdução ao PhoneGap e Sencha Touch
 
1º Zabbix On The Road - João Pessoa - Zabbix!?!? - Sou Dev, o que eu tenho a ...
1º Zabbix On The Road - João Pessoa - Zabbix!?!? - Sou Dev, o que eu tenho a ...1º Zabbix On The Road - João Pessoa - Zabbix!?!? - Sou Dev, o que eu tenho a ...
1º Zabbix On The Road - João Pessoa - Zabbix!?!? - Sou Dev, o que eu tenho a ...
 
Protótipos mobile na prática
Protótipos mobile na práticaProtótipos mobile na prática
Protótipos mobile na prática
 

Mais de Alvaro Viebrantz

BigQuery Performance Improvements Storage API
BigQuery Performance Improvements Storage APIBigQuery Performance Improvements Storage API
BigQuery Performance Improvements Storage APIAlvaro Viebrantz
 
End to End IoT projects with Zephyr.pdf
End to End IoT projects with Zephyr.pdfEnd to End IoT projects with Zephyr.pdf
End to End IoT projects with Zephyr.pdfAlvaro Viebrantz
 
Carreira de Desenvolvimento
Carreira de DesenvolvimentoCarreira de Desenvolvimento
Carreira de DesenvolvimentoAlvaro Viebrantz
 
Construindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em GoConstruindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em GoAlvaro Viebrantz
 
Prototipação em hackathons
Prototipação em hackathonsPrototipação em hackathons
Prototipação em hackathonsAlvaro Viebrantz
 
Building REST APIs using gRPC and Go
Building REST APIs using gRPC and GoBuilding REST APIs using gRPC and Go
Building REST APIs using gRPC and GoAlvaro Viebrantz
 
TinyML - IoT e Machine Learning
TinyML -  IoT e Machine LearningTinyML -  IoT e Machine Learning
TinyML - IoT e Machine LearningAlvaro Viebrantz
 
O que projetos de IoT precisam ?
O que projetos de IoT precisam ?O que projetos de IoT precisam ?
O que projetos de IoT precisam ?Alvaro Viebrantz
 
Edge computing na prática com IoT, Machine Learning e Google Cloud
Edge computing na prática com IoT, Machine Learning e Google CloudEdge computing na prática com IoT, Machine Learning e Google Cloud
Edge computing na prática com IoT, Machine Learning e Google CloudAlvaro Viebrantz
 
Edge computing in practice using IoT, Tensorflow and Google Cloud
Edge computing in practice using IoT, Tensorflow and Google CloudEdge computing in practice using IoT, Tensorflow and Google Cloud
Edge computing in practice using IoT, Tensorflow and Google CloudAlvaro Viebrantz
 
Iniciando com LoRa, The Things Network e Google Cloud
Iniciando com LoRa, The Things Network e Google CloudIniciando com LoRa, The Things Network e Google Cloud
Iniciando com LoRa, The Things Network e Google CloudAlvaro Viebrantz
 
Construindo projetos para o Google Assistant - I/O 2019 Recap São Paulo
Construindo projetos para o Google Assistant - I/O 2019 Recap São PauloConstruindo projetos para o Google Assistant - I/O 2019 Recap São Paulo
Construindo projetos para o Google Assistant - I/O 2019 Recap São PauloAlvaro Viebrantz
 
Edge computing na prática com IoT, Machine Learning e Google Cloud
Edge computing na prática com IoT, Machine Learning e Google CloudEdge computing na prática com IoT, Machine Learning e Google Cloud
Edge computing na prática com IoT, Machine Learning e Google CloudAlvaro Viebrantz
 
Construindo projetos com Google Assistant e IoT
Construindo projetos com Google Assistant e IoTConstruindo projetos com Google Assistant e IoT
Construindo projetos com Google Assistant e IoTAlvaro Viebrantz
 
Explorando Go em Ambiente Embarcado
Explorando Go em Ambiente EmbarcadoExplorando Go em Ambiente Embarcado
Explorando Go em Ambiente EmbarcadoAlvaro Viebrantz
 
Soluções de IoT usando Google Cloud e Firebase
Soluções de IoT usando Google Cloud e FirebaseSoluções de IoT usando Google Cloud e Firebase
Soluções de IoT usando Google Cloud e FirebaseAlvaro Viebrantz
 
Criando soluções de IoT usando Javascript de Ponta a Ponta: do Hardware até a...
Criando soluções de IoT usando Javascript de Ponta a Ponta: do Hardware até a...Criando soluções de IoT usando Javascript de Ponta a Ponta: do Hardware até a...
Criando soluções de IoT usando Javascript de Ponta a Ponta: do Hardware até a...Alvaro Viebrantz
 
Arquitetura de IoT na prática com Google Cloud - Join Community 2018
Arquitetura de IoT na prática com Google Cloud - Join Community 2018Arquitetura de IoT na prática com Google Cloud - Join Community 2018
Arquitetura de IoT na prática com Google Cloud - Join Community 2018Alvaro Viebrantz
 
Codelab - Google Cloud IoT Core e MongooseOS - I/O Extended Cuiabá 2018
Codelab - Google Cloud IoT Core e MongooseOS - I/O Extended Cuiabá 2018Codelab - Google Cloud IoT Core e MongooseOS - I/O Extended Cuiabá 2018
Codelab - Google Cloud IoT Core e MongooseOS - I/O Extended Cuiabá 2018Alvaro Viebrantz
 
Arquitetura de Internet das Coisas usando Google Cloud
Arquitetura de Internet das Coisas usando Google CloudArquitetura de Internet das Coisas usando Google Cloud
Arquitetura de Internet das Coisas usando Google CloudAlvaro Viebrantz
 

Mais de Alvaro Viebrantz (20)

BigQuery Performance Improvements Storage API
BigQuery Performance Improvements Storage APIBigQuery Performance Improvements Storage API
BigQuery Performance Improvements Storage API
 
End to End IoT projects with Zephyr.pdf
End to End IoT projects with Zephyr.pdfEnd to End IoT projects with Zephyr.pdf
End to End IoT projects with Zephyr.pdf
 
Carreira de Desenvolvimento
Carreira de DesenvolvimentoCarreira de Desenvolvimento
Carreira de Desenvolvimento
 
Construindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em GoConstruindo aplicações Cloud Native em Go
Construindo aplicações Cloud Native em Go
 
Prototipação em hackathons
Prototipação em hackathonsPrototipação em hackathons
Prototipação em hackathons
 
Building REST APIs using gRPC and Go
Building REST APIs using gRPC and GoBuilding REST APIs using gRPC and Go
Building REST APIs using gRPC and Go
 
TinyML - IoT e Machine Learning
TinyML -  IoT e Machine LearningTinyML -  IoT e Machine Learning
TinyML - IoT e Machine Learning
 
O que projetos de IoT precisam ?
O que projetos de IoT precisam ?O que projetos de IoT precisam ?
O que projetos de IoT precisam ?
 
Edge computing na prática com IoT, Machine Learning e Google Cloud
Edge computing na prática com IoT, Machine Learning e Google CloudEdge computing na prática com IoT, Machine Learning e Google Cloud
Edge computing na prática com IoT, Machine Learning e Google Cloud
 
Edge computing in practice using IoT, Tensorflow and Google Cloud
Edge computing in practice using IoT, Tensorflow and Google CloudEdge computing in practice using IoT, Tensorflow and Google Cloud
Edge computing in practice using IoT, Tensorflow and Google Cloud
 
Iniciando com LoRa, The Things Network e Google Cloud
Iniciando com LoRa, The Things Network e Google CloudIniciando com LoRa, The Things Network e Google Cloud
Iniciando com LoRa, The Things Network e Google Cloud
 
Construindo projetos para o Google Assistant - I/O 2019 Recap São Paulo
Construindo projetos para o Google Assistant - I/O 2019 Recap São PauloConstruindo projetos para o Google Assistant - I/O 2019 Recap São Paulo
Construindo projetos para o Google Assistant - I/O 2019 Recap São Paulo
 
Edge computing na prática com IoT, Machine Learning e Google Cloud
Edge computing na prática com IoT, Machine Learning e Google CloudEdge computing na prática com IoT, Machine Learning e Google Cloud
Edge computing na prática com IoT, Machine Learning e Google Cloud
 
Construindo projetos com Google Assistant e IoT
Construindo projetos com Google Assistant e IoTConstruindo projetos com Google Assistant e IoT
Construindo projetos com Google Assistant e IoT
 
Explorando Go em Ambiente Embarcado
Explorando Go em Ambiente EmbarcadoExplorando Go em Ambiente Embarcado
Explorando Go em Ambiente Embarcado
 
Soluções de IoT usando Google Cloud e Firebase
Soluções de IoT usando Google Cloud e FirebaseSoluções de IoT usando Google Cloud e Firebase
Soluções de IoT usando Google Cloud e Firebase
 
Criando soluções de IoT usando Javascript de Ponta a Ponta: do Hardware até a...
Criando soluções de IoT usando Javascript de Ponta a Ponta: do Hardware até a...Criando soluções de IoT usando Javascript de Ponta a Ponta: do Hardware até a...
Criando soluções de IoT usando Javascript de Ponta a Ponta: do Hardware até a...
 
Arquitetura de IoT na prática com Google Cloud - Join Community 2018
Arquitetura de IoT na prática com Google Cloud - Join Community 2018Arquitetura de IoT na prática com Google Cloud - Join Community 2018
Arquitetura de IoT na prática com Google Cloud - Join Community 2018
 
Codelab - Google Cloud IoT Core e MongooseOS - I/O Extended Cuiabá 2018
Codelab - Google Cloud IoT Core e MongooseOS - I/O Extended Cuiabá 2018Codelab - Google Cloud IoT Core e MongooseOS - I/O Extended Cuiabá 2018
Codelab - Google Cloud IoT Core e MongooseOS - I/O Extended Cuiabá 2018
 
Arquitetura de Internet das Coisas usando Google Cloud
Arquitetura de Internet das Coisas usando Google CloudArquitetura de Internet das Coisas usando Google Cloud
Arquitetura de Internet das Coisas usando Google Cloud
 

React e Firebase: Criando uma aplicação de chat em tempo real