SlideShare a Scribd company logo
1 of 17
Download to read offline
Introduction
ReactNative
by Michał Taberski
Agenda
1. About me
2. What is React Native, and what is not?
3. How does it work?
4. Advantages of React Native approach
5. Quick start
6. Demo
7. Bonus?!
About me
• Web developer, freelance contractor,
• always open for networking, good food and Fifa
challenge ;)
• JavaScript developer
• yesterday: Ruby on Rails and BackboneJS
• today: ReactJS, Redux and stuff
• tomorrow: maybe Elm? (http://elm-lang.org/)
React Native is…
React Native is not…
• it’s not a web based technology like Phonegap,

(no HTML, CSS animations, jQuery)
• it’s not “one app for all platforms solution”* like
Titanium





* - although its possible you shouldn’t do this
– official React Native homepage
(https://facebook.github.io/react-native/)
“A FRAMEWORK FOR BUILDING NATIVE APPS
USING REACT”
but it is…
which means
• you can write NATIVE APPS with JavaScript (ES6)
• your code looks just like ReactJS code - JSX syntax,
declarative UI describing etc.
• unlike ReactJS, ReactNative’s output is not HTML,

code it’s not executed on frontend
• you can still use a lot of good JS libs you use already on
browser (Redux, Immutable.JS, testing frameworks etc.)
• it supports Apple iOS, and Android
So… how does it work?
How does it work?
RN approach profits:
• you can use JavaScript for NATIVE apps for iOS
and Android (cool for you, and your boss)
• you can design UI with consistent technologies you
are already familiar with (Flexbox, and CSS subset)
• animations and gestures API is made with
touchable display in mind
1/3
RN approach profits:
• a lot of components and logic can be shared
between platforms
• you don’t need to recompile app after every code
change
• a lot of good JS code can be resued on native apps
(Redux, Immutable.js, test frameworks)
2/3
RN approach profits:
• React Native doesn’t enforce you to write entire
app with this technology, so you can slowly embed
RN to already written native app
• Sweet things for developers:
very good, descriptive error messaging
Chrome debugger
3/3
so its time to start…
QUICK START
• if you know already React you are almost done
• React Native is not HTML, but there are corresponding
components:
for block elements instead of <div/> use <View/>
for inline elements instead of <span/> use <Text/>
for images instead of <img/> use <Image/>
• CSS is limited, so check out the documentation before
• model your layout with flexbox
1/2
QUICK START
• Make sure you have XCode, and Node.JS on the board
• Install ReactNative CLI
$ npm install -g react-native-cli
• Init new project, and start to code
$ react-native init AwesomeProject
2/2
DEMO
Thanks!
feedback and contact
michal@michaltaberski.com

More Related Content

What's hot

Native Script by Sebastian Witalec
Native Script by Sebastian WitalecNative Script by Sebastian Witalec
Native Script by Sebastian Witalec
Simone Basso
 
ChrisSchilling_SideProjects
ChrisSchilling_SideProjectsChrisSchilling_SideProjects
ChrisSchilling_SideProjects
Chris Schilling
 

What's hot (19)

TypeScript
TypeScriptTypeScript
TypeScript
 
Building Native Android Apps with JavaScript
Building Native Android Apps with JavaScriptBuilding Native Android Apps with JavaScript
Building Native Android Apps with JavaScript
 
Electron
ElectronElectron
Electron
 
Native Script by Sebastian Witalec
Native Script by Sebastian WitalecNative Script by Sebastian Witalec
Native Script by Sebastian Witalec
 
Naeem Akram Malik, Sr. Software Engineer & SQA Analyst
Naeem Akram Malik, Sr. Software Engineer & SQA AnalystNaeem Akram Malik, Sr. Software Engineer & SQA Analyst
Naeem Akram Malik, Sr. Software Engineer & SQA Analyst
 
Agile Software Development by Sencha
Agile Software Development by SenchaAgile Software Development by Sencha
Agile Software Development by Sencha
 
Aspect oriented programming
Aspect oriented programmingAspect oriented programming
Aspect oriented programming
 
Monorepo: React + React Native. React Alicante
Monorepo:  React + React Native. React Alicante Monorepo:  React + React Native. React Alicante
Monorepo: React + React Native. React Alicante
 
Mvvm is like born fraction
Mvvm is like born fractionMvvm is like born fraction
Mvvm is like born fraction
 
ng-conf NativeScript and Angular 2 Workshop
ng-conf NativeScript and Angular 2 Workshopng-conf NativeScript and Angular 2 Workshop
ng-conf NativeScript and Angular 2 Workshop
 
Js foo famo.us- build native quality apps using html5 within a day
Js foo  famo.us- build native quality apps using html5 within a dayJs foo  famo.us- build native quality apps using html5 within a day
Js foo famo.us- build native quality apps using html5 within a day
 
A Minimalist’s Attempt at Building a Distributed Application
A Minimalist’s Attempt at Building a Distributed ApplicationA Minimalist’s Attempt at Building a Distributed Application
A Minimalist’s Attempt at Building a Distributed Application
 
Xamarin UI Test And Xamarin Test Cloud
Xamarin UI Test And Xamarin Test CloudXamarin UI Test And Xamarin Test Cloud
Xamarin UI Test And Xamarin Test Cloud
 
ChrisSchilling_SideProjects
ChrisSchilling_SideProjectsChrisSchilling_SideProjects
ChrisSchilling_SideProjects
 
Joomla! multiplied - How to run Multi-Sites - JandBeyond 2014
Joomla! multiplied - How to run Multi-Sites - JandBeyond 2014Joomla! multiplied - How to run Multi-Sites - JandBeyond 2014
Joomla! multiplied - How to run Multi-Sites - JandBeyond 2014
 
Testing Storm components with Groovy and Spock
Testing Storm components with Groovy and SpockTesting Storm components with Groovy and Spock
Testing Storm components with Groovy and Spock
 
Famo.us - build native quality apps using html5 within a day
Famo.us - build native quality apps using html5 within a dayFamo.us - build native quality apps using html5 within a day
Famo.us - build native quality apps using html5 within a day
 
To Protect & To Serve
To Protect & To ServeTo Protect & To Serve
To Protect & To Serve
 
Net training in bhubaneswar
Net training in bhubaneswar Net training in bhubaneswar
Net training in bhubaneswar
 

Viewers also liked

Quiero Poder Volar
Quiero Poder VolarQuiero Poder Volar
Quiero Poder Volar
guest176b14
 
Final Presentation
Final Presentation Final Presentation
Final Presentation
kgarcia111
 

Viewers also liked (12)

Resumen de 7 habitos de la gente altamente efectiva aimara
Resumen de 7 habitos de la gente altamente efectiva aimaraResumen de 7 habitos de la gente altamente efectiva aimara
Resumen de 7 habitos de la gente altamente efectiva aimara
 
Join Axis CC thru LR
Join Axis CC thru LR Join Axis CC thru LR
Join Axis CC thru LR
 
Bethany Feltner Professional Persona Project
Bethany Feltner Professional Persona ProjectBethany Feltner Professional Persona Project
Bethany Feltner Professional Persona Project
 
Jewellery Forms and Style - Candere
Jewellery Forms and Style - CandereJewellery Forms and Style - Candere
Jewellery Forms and Style - Candere
 
Quiero Poder Volar
Quiero Poder VolarQuiero Poder Volar
Quiero Poder Volar
 
Frontshareアプリ注意点
Frontshareアプリ注意点Frontshareアプリ注意点
Frontshareアプリ注意点
 
Data Mining (Introduction)
Data Mining (Introduction)Data Mining (Introduction)
Data Mining (Introduction)
 
Tax Data Analytics: A new era for tax planning and compliance
Tax Data Analytics: A new era for tax planning and complianceTax Data Analytics: A new era for tax planning and compliance
Tax Data Analytics: A new era for tax planning and compliance
 
Maximising The Value of Analytics in Tax Compliance
Maximising The Value of Analytics in Tax ComplianceMaximising The Value of Analytics in Tax Compliance
Maximising The Value of Analytics in Tax Compliance
 
Final Presentation
Final Presentation Final Presentation
Final Presentation
 
AS INSTITUTAS - VOLUME II - ESTUDO - JOÃO CALVINO
AS INSTITUTAS - VOLUME II - ESTUDO - JOÃO CALVINO AS INSTITUTAS - VOLUME II - ESTUDO - JOÃO CALVINO
AS INSTITUTAS - VOLUME II - ESTUDO - JOÃO CALVINO
 
Data mining Project
Data mining ProjectData mining Project
Data mining Project
 

Similar to An Introduction to ReactNative

Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011
Nuxeo
 
l1-reactnativeintroduction-160816150540.pdf
l1-reactnativeintroduction-160816150540.pdfl1-reactnativeintroduction-160816150540.pdf
l1-reactnativeintroduction-160816150540.pdf
Hương Trà Pé Xjnk
 
Philip Shurpik "Architecting React Native app"
Philip Shurpik "Architecting React Native app"Philip Shurpik "Architecting React Native app"
Philip Shurpik "Architecting React Native app"
Fwdays
 

Similar to An Introduction to ReactNative (20)

Introduction to react native with redux
Introduction to react native with reduxIntroduction to react native with redux
Introduction to react native with redux
 
React native - React(ive) Way To Build Native Mobile Apps
React native - React(ive) Way To Build Native Mobile AppsReact native - React(ive) Way To Build Native Mobile Apps
React native - React(ive) Way To Build Native Mobile Apps
 
An evening with React Native
An evening with React NativeAn evening with React Native
An evening with React Native
 
Mobile native-hacks
Mobile native-hacksMobile native-hacks
Mobile native-hacks
 
Progressive Web Apps and React
Progressive Web Apps and ReactProgressive Web Apps and React
Progressive Web Apps and React
 
Isomorphic JavaScript – future of the web
Isomorphic JavaScript – future of the webIsomorphic JavaScript – future of the web
Isomorphic JavaScript – future of the web
 
React.js at Cortex
React.js at CortexReact.js at Cortex
React.js at Cortex
 
React Native - Build Native Mobile App
React Native - Build Native Mobile AppReact Native - Build Native Mobile App
React Native - Build Native Mobile App
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011
 
Meetup. Technologies Intro for Non-Tech People
Meetup. Technologies Intro for Non-Tech PeopleMeetup. Technologies Intro for Non-Tech People
Meetup. Technologies Intro for Non-Tech People
 
Welcome to React.pptx
Welcome to React.pptxWelcome to React.pptx
Welcome to React.pptx
 
Starting from scratch in 2017
Starting from scratch in 2017Starting from scratch in 2017
Starting from scratch in 2017
 
From React to React Native - Things I wish I knew when I started
From React to React Native - Things I wish I knew when I startedFrom React to React Native - Things I wish I knew when I started
From React to React Native - Things I wish I knew when I started
 
React Native and the future of web technology (Mark Wilcox) - GreeceJS #15
React Native and the future of web technology (Mark Wilcox) - GreeceJS #15React Native and the future of web technology (Mark Wilcox) - GreeceJS #15
React Native and the future of web technology (Mark Wilcox) - GreeceJS #15
 
l1-reactnativeintroduction-160816150540.pdf
l1-reactnativeintroduction-160816150540.pdfl1-reactnativeintroduction-160816150540.pdf
l1-reactnativeintroduction-160816150540.pdf
 
React Native Introduction: Making Real iOS and Android Mobile App By JavaScript
React Native Introduction: Making Real iOS and Android Mobile App By JavaScriptReact Native Introduction: Making Real iOS and Android Mobile App By JavaScript
React Native Introduction: Making Real iOS and Android Mobile App By JavaScript
 
Experiences building apps with React Native @UtrechtJS May 2016
Experiences building apps with React Native @UtrechtJS May 2016Experiences building apps with React Native @UtrechtJS May 2016
Experiences building apps with React Native @UtrechtJS May 2016
 
Pearls and Must-Have Tools for the Modern Web / .NET Developer
Pearls and Must-Have Tools for the Modern Web / .NET DeveloperPearls and Must-Have Tools for the Modern Web / .NET Developer
Pearls and Must-Have Tools for the Modern Web / .NET Developer
 
Philip Shurpik "Architecting React Native app"
Philip Shurpik "Architecting React Native app"Philip Shurpik "Architecting React Native app"
Philip Shurpik "Architecting React Native app"
 
The Gist of React Native
The Gist of React NativeThe Gist of React Native
The Gist of React Native
 

Recently uploaded

1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
AldoGarca30
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
Kamal Acharya
 
Verification of thevenin's theorem for BEEE Lab (1).pptx
Verification of thevenin's theorem for BEEE Lab (1).pptxVerification of thevenin's theorem for BEEE Lab (1).pptx
Verification of thevenin's theorem for BEEE Lab (1).pptx
chumtiyababu
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Kandungan 087776558899
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
ssuser89054b
 

Recently uploaded (20)

GEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLE
GEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLEGEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLE
GEAR TRAIN- BASIC CONCEPTS AND WORKING PRINCIPLE
 
DC MACHINE-Motoring and generation, Armature circuit equation
DC MACHINE-Motoring and generation, Armature circuit equationDC MACHINE-Motoring and generation, Armature circuit equation
DC MACHINE-Motoring and generation, Armature circuit equation
 
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
 
Hostel management system project report..pdf
Hostel management system project report..pdfHostel management system project report..pdf
Hostel management system project report..pdf
 
Block diagram reduction techniques in control systems.ppt
Block diagram reduction techniques in control systems.pptBlock diagram reduction techniques in control systems.ppt
Block diagram reduction techniques in control systems.ppt
 
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptxA CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
 
Work-Permit-Receiver-in-Saudi-Aramco.pptx
Work-Permit-Receiver-in-Saudi-Aramco.pptxWork-Permit-Receiver-in-Saudi-Aramco.pptx
Work-Permit-Receiver-in-Saudi-Aramco.pptx
 
Design For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the startDesign For Accessibility: Getting it right from the start
Design For Accessibility: Getting it right from the start
 
School management system project Report.pdf
School management system project Report.pdfSchool management system project Report.pdf
School management system project Report.pdf
 
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best ServiceTamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
 
Verification of thevenin's theorem for BEEE Lab (1).pptx
Verification of thevenin's theorem for BEEE Lab (1).pptxVerification of thevenin's theorem for BEEE Lab (1).pptx
Verification of thevenin's theorem for BEEE Lab (1).pptx
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
 
Employee leave management system project.
Employee leave management system project.Employee leave management system project.
Employee leave management system project.
 
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxS1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 
Wadi Rum luxhotel lodge Analysis case study.pptx
Wadi Rum luxhotel lodge Analysis case study.pptxWadi Rum luxhotel lodge Analysis case study.pptx
Wadi Rum luxhotel lodge Analysis case study.pptx
 
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKARHAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
 
Online electricity billing project report..pdf
Online electricity billing project report..pdfOnline electricity billing project report..pdf
Online electricity billing project report..pdf
 
Thermal Engineering Unit - I & II . ppt
Thermal Engineering  Unit - I & II . pptThermal Engineering  Unit - I & II . ppt
Thermal Engineering Unit - I & II . ppt
 

An Introduction to ReactNative

  • 2. Agenda 1. About me 2. What is React Native, and what is not? 3. How does it work? 4. Advantages of React Native approach 5. Quick start 6. Demo 7. Bonus?!
  • 3. About me • Web developer, freelance contractor, • always open for networking, good food and Fifa challenge ;) • JavaScript developer • yesterday: Ruby on Rails and BackboneJS • today: ReactJS, Redux and stuff • tomorrow: maybe Elm? (http://elm-lang.org/)
  • 5. React Native is not… • it’s not a web based technology like Phonegap,
 (no HTML, CSS animations, jQuery) • it’s not “one app for all platforms solution”* like Titanium
 
 
 * - although its possible you shouldn’t do this
  • 6. – official React Native homepage (https://facebook.github.io/react-native/) “A FRAMEWORK FOR BUILDING NATIVE APPS USING REACT” but it is…
  • 7. which means • you can write NATIVE APPS with JavaScript (ES6) • your code looks just like ReactJS code - JSX syntax, declarative UI describing etc. • unlike ReactJS, ReactNative’s output is not HTML,
 code it’s not executed on frontend • you can still use a lot of good JS libs you use already on browser (Redux, Immutable.JS, testing frameworks etc.) • it supports Apple iOS, and Android
  • 8. So… how does it work?
  • 9. How does it work?
  • 10. RN approach profits: • you can use JavaScript for NATIVE apps for iOS and Android (cool for you, and your boss) • you can design UI with consistent technologies you are already familiar with (Flexbox, and CSS subset) • animations and gestures API is made with touchable display in mind 1/3
  • 11. RN approach profits: • a lot of components and logic can be shared between platforms • you don’t need to recompile app after every code change • a lot of good JS code can be resued on native apps (Redux, Immutable.js, test frameworks) 2/3
  • 12. RN approach profits: • React Native doesn’t enforce you to write entire app with this technology, so you can slowly embed RN to already written native app • Sweet things for developers: very good, descriptive error messaging Chrome debugger 3/3
  • 13. so its time to start…
  • 14. QUICK START • if you know already React you are almost done • React Native is not HTML, but there are corresponding components: for block elements instead of <div/> use <View/> for inline elements instead of <span/> use <Text/> for images instead of <img/> use <Image/> • CSS is limited, so check out the documentation before • model your layout with flexbox 1/2
  • 15. QUICK START • Make sure you have XCode, and Node.JS on the board • Install ReactNative CLI $ npm install -g react-native-cli • Init new project, and start to code $ react-native init AwesomeProject 2/2
  • 16. DEMO