SlideShare a Scribd company logo
The Tools to get you started with React Na4ve
Robert Tochman-Szewc
© Robert Tochman-Szewc, 2017 1
My Background
• Started with React Na/ve in May 2016 on side projects
• Turned this into a full-/me job beginning of 2017
• Released three apps with RN, most recently Blue Boat Log
© Robert Tochman-Szewc, 2017 2
© Robert Tochman-Szewc, 2017 3
Recap: React Na*ve
• Same thing as React
• But with na2ve components (<View> instead of <div>)
• Benefits: Smooth Android and iOS apps using familiar JS
ecosystem
• Downsides: ...
© Robert Tochman-Szewc, 2017 4
Step 1: The Sandbox
• Expo allows you to get familiar with RN easily
• Write code, test on the device
• No work with iOS/Android ecosystem required
• No access to NaCve Modules
© Robert Tochman-Szewc, 2017 5
© Robert Tochman-Szewc, 2017 6
Step 2: Connect the Dots
• How to switch between views? No react-router
• Instead: react-naviga9on
• Want to manage state be<er? Here's how:
• State Management: redux
• Router: react-na9ve-router-flux
© Robert Tochman-Szewc, 2017 7
Step 3: Visuals
• Special CSS syntax based on Flexbox
• Out of the box: No styled components
• Build your own or ...
• Use one of the alterna@ves: react-na@ve-ui-kiDen
© Robert Tochman-Szewc, 2017 8
Step 4: NATIVE
• There is a sea of libraries out there
• Background GPS, Crashly<cs/Fabric, Google/FB Signin,
FontAwesome/Material Icons, LoEe, SQLite, File System
• Everything you can do na<vely can be done with RN
• OLen as easy as
yarn install <native library>
react-native link <native library>
© Robert Tochman-Szewc, 2017 9
Step 4: NATIVE (2)
• Possibly more difficult, but allows insight into iOS/Android
tooling
• Problem: Many projects are/become abandoned
• Learn to place bets and switch every now and again
© Robert Tochman-Szewc, 2017 10
Step 5: Test Automa/on
• Jest
• Mock Na-ve Modules by hand
• Mock states and use snapshots
• Will save you countless hours debugging
© Robert Tochman-Szewc, 2017 11
© Robert Tochman-Szewc, 2017 12
Bonus Rant
Present since at least May 2016, s3ll not reliably solved:
Text Input
© Robert Tochman-Szewc, 2017 13
Thanks!
rob@rtsworks.com
© Robert Tochman-Szewc, 2017 14
Links
• Expo
• React Naviga0on
• Redux
• React Na0ve Router Flux
• React Na0ve UI Ki:en
• Jest
© Robert Tochman-Szewc, 2017 15

More Related Content

PPTX
Serverless testing-serverless-sydney-20181018
PDF
An introduction to Reactive applications, Reactive Streams, and options for t...
PDF
Reactive Streams and the Wide World of Groovy
PPTX
React for .net developers
PDF
Your time saving front end workflow
PDF
Creating Hyper Performant Web Apps with React
PDF
Fast end-to-end-tests
PDF
Reactive Streams and the Wide World of Groovy
Serverless testing-serverless-sydney-20181018
An introduction to Reactive applications, Reactive Streams, and options for t...
Reactive Streams and the Wide World of Groovy
React for .net developers
Your time saving front end workflow
Creating Hyper Performant Web Apps with React
Fast end-to-end-tests
Reactive Streams and the Wide World of Groovy

What's hot (19)

PDF
Embracing the Future
PPTX
Describing a process
PDF
ESNext, service workers, and the future of the web
PPTX
Continuous database deployment
PDF
Coolblue Behind the Scenes | Pat Hermens - On the shoulders of giants.
PDF
Modern Messaging for Distributed Systems
PDF
The Mysteries Of JavaScript-Fu (@media Europe Edition)
PDF
Performance Testing w/ WebPage Test Private Instance (DrupalCamp Ohio)
PDF
How To Migrate a Rails App From a Dedicated Server Into Cloud Environment? - ...
PDF
What is octohost?
PPTX
Website Speed :: Fox Valley Computing Professionals, September 2014
PPTX
Node.js Ignite Talk
PDF
Speed up your Serverless development flow
PPTX
devworkshop-04_13_2016-ucsdnow-presentation
PPTX
How to practice TDD without shooting yourself in the foot
PPTX
Strong Consistency in Databases. What does it actually guarantee? - Andy Goo...
PPTX
Continuous Integration
PDF
Node Summit - Release the Kraken
ODP
Tavernalc: How to transform your OpenOffice Calc into a grid.
Embracing the Future
Describing a process
ESNext, service workers, and the future of the web
Continuous database deployment
Coolblue Behind the Scenes | Pat Hermens - On the shoulders of giants.
Modern Messaging for Distributed Systems
The Mysteries Of JavaScript-Fu (@media Europe Edition)
Performance Testing w/ WebPage Test Private Instance (DrupalCamp Ohio)
How To Migrate a Rails App From a Dedicated Server Into Cloud Environment? - ...
What is octohost?
Website Speed :: Fox Valley Computing Professionals, September 2014
Node.js Ignite Talk
Speed up your Serverless development flow
devworkshop-04_13_2016-ucsdnow-presentation
How to practice TDD without shooting yourself in the foot
Strong Consistency in Databases. What does it actually guarantee? - Andy Goo...
Continuous Integration
Node Summit - Release the Kraken
Tavernalc: How to transform your OpenOffice Calc into a grid.
Ad

Similar to The Tools to get you started with React Native (20)

PPTX
JS Fest 2018. Илья Иванов. Введение в React-Native
PPTX
React native introduction (Mobile Warsaw)
PDF
"React Native" by Vanessa Leo e Roberto Brogi
PDF
React Native Workshop - React Alicante
PDF
Matteo Manchi - React Native for multi-platform mobile applications - Codemot...
PDF
Introduction to React Native
PDF
Introduzione a React Native - Facebook Developer Circle Rome
PDF
React native: building native iOS apps with javascript
PDF
React native.key
PPTX
React Native: Introduction
PDF
React Native and the future of web technology (Mark Wilcox) - GreeceJS #15
PDF
Introduction to React Native Workshop
PDF
GITS Class #20: Building A Fast and Responsive UI in React Native
PDF
React Tech Salon
PDF
Developing Apps With React Native
PDF
Unboxing web with React Native
PDF
Lviv MD Day 2015 Іван Лаврів "Mobile development with React Native"
PPTX
Introduction to React Native
PDF
learning react
PPTX
Creating books app with react native
JS Fest 2018. Илья Иванов. Введение в React-Native
React native introduction (Mobile Warsaw)
"React Native" by Vanessa Leo e Roberto Brogi
React Native Workshop - React Alicante
Matteo Manchi - React Native for multi-platform mobile applications - Codemot...
Introduction to React Native
Introduzione a React Native - Facebook Developer Circle Rome
React native: building native iOS apps with javascript
React native.key
React Native: Introduction
React Native and the future of web technology (Mark Wilcox) - GreeceJS #15
Introduction to React Native Workshop
GITS Class #20: Building A Fast and Responsive UI in React Native
React Tech Salon
Developing Apps With React Native
Unboxing web with React Native
Lviv MD Day 2015 Іван Лаврів "Mobile development with React Native"
Introduction to React Native
learning react
Creating books app with react native
Ad

Recently uploaded (20)

PPTX
June-4-Sermon-Powerpoint.pptx USE THIS FOR YOUR MOTIVATION
PDF
An introduction to the IFRS (ISSB) Stndards.pdf
PDF
Cloud-Scale Log Monitoring _ Datadog.pdf
PPTX
Introuction about WHO-FIC in ICD-10.pptx
PDF
WebRTC in SignalWire - troubleshooting media negotiation
PPTX
PptxGenJS_Demo_Chart_20250317130215833.pptx
PPTX
Slides PPTX World Game (s) Eco Economic Epochs.pptx
PDF
Sims 4 Historia para lo sims 4 para jugar
PDF
The New Creative Director: How AI Tools for Social Media Content Creation Are...
PPT
tcp ip networks nd ip layering assotred slides
PDF
Introduction to the IoT system, how the IoT system works
PDF
Smart Home Technology for Health Monitoring (www.kiu.ac.ug)
PPTX
Job_Card_System_Styled_lorem_ipsum_.pptx
PDF
💰 𝐔𝐊𝐓𝐈 𝐊𝐄𝐌𝐄𝐍𝐀𝐍𝐆𝐀𝐍 𝐊𝐈𝐏𝐄𝐑𝟒𝐃 𝐇𝐀𝐑𝐈 𝐈𝐍𝐈 𝟐𝟎𝟐𝟓 💰
PPTX
522797556-Unit-2-Temperature-measurement-1-1.pptx
PDF
Unit-1 introduction to cyber security discuss about how to secure a system
PPT
Ethics in Information System - Management Information System
PPTX
Module 1 - Cyber Law and Ethics 101.pptx
PPTX
Introduction about ICD -10 and ICD11 on 5.8.25.pptx
PPT
FIRE PREVENTION AND CONTROL PLAN- LUS.FM.MQ.OM.UTM.PLN.00014.ppt
June-4-Sermon-Powerpoint.pptx USE THIS FOR YOUR MOTIVATION
An introduction to the IFRS (ISSB) Stndards.pdf
Cloud-Scale Log Monitoring _ Datadog.pdf
Introuction about WHO-FIC in ICD-10.pptx
WebRTC in SignalWire - troubleshooting media negotiation
PptxGenJS_Demo_Chart_20250317130215833.pptx
Slides PPTX World Game (s) Eco Economic Epochs.pptx
Sims 4 Historia para lo sims 4 para jugar
The New Creative Director: How AI Tools for Social Media Content Creation Are...
tcp ip networks nd ip layering assotred slides
Introduction to the IoT system, how the IoT system works
Smart Home Technology for Health Monitoring (www.kiu.ac.ug)
Job_Card_System_Styled_lorem_ipsum_.pptx
💰 𝐔𝐊𝐓𝐈 𝐊𝐄𝐌𝐄𝐍𝐀𝐍𝐆𝐀𝐍 𝐊𝐈𝐏𝐄𝐑𝟒𝐃 𝐇𝐀𝐑𝐈 𝐈𝐍𝐈 𝟐𝟎𝟐𝟓 💰
522797556-Unit-2-Temperature-measurement-1-1.pptx
Unit-1 introduction to cyber security discuss about how to secure a system
Ethics in Information System - Management Information System
Module 1 - Cyber Law and Ethics 101.pptx
Introduction about ICD -10 and ICD11 on 5.8.25.pptx
FIRE PREVENTION AND CONTROL PLAN- LUS.FM.MQ.OM.UTM.PLN.00014.ppt

The Tools to get you started with React Native

  • 1. The Tools to get you started with React Na4ve Robert Tochman-Szewc © Robert Tochman-Szewc, 2017 1
  • 2. My Background • Started with React Na/ve in May 2016 on side projects • Turned this into a full-/me job beginning of 2017 • Released three apps with RN, most recently Blue Boat Log © Robert Tochman-Szewc, 2017 2
  • 4. Recap: React Na*ve • Same thing as React • But with na2ve components (<View> instead of <div>) • Benefits: Smooth Android and iOS apps using familiar JS ecosystem • Downsides: ... © Robert Tochman-Szewc, 2017 4
  • 5. Step 1: The Sandbox • Expo allows you to get familiar with RN easily • Write code, test on the device • No work with iOS/Android ecosystem required • No access to NaCve Modules © Robert Tochman-Szewc, 2017 5
  • 7. Step 2: Connect the Dots • How to switch between views? No react-router • Instead: react-naviga9on • Want to manage state be<er? Here's how: • State Management: redux • Router: react-na9ve-router-flux © Robert Tochman-Szewc, 2017 7
  • 8. Step 3: Visuals • Special CSS syntax based on Flexbox • Out of the box: No styled components • Build your own or ... • Use one of the alterna@ves: react-na@ve-ui-kiDen © Robert Tochman-Szewc, 2017 8
  • 9. Step 4: NATIVE • There is a sea of libraries out there • Background GPS, Crashly<cs/Fabric, Google/FB Signin, FontAwesome/Material Icons, LoEe, SQLite, File System • Everything you can do na<vely can be done with RN • OLen as easy as yarn install <native library> react-native link <native library> © Robert Tochman-Szewc, 2017 9
  • 10. Step 4: NATIVE (2) • Possibly more difficult, but allows insight into iOS/Android tooling • Problem: Many projects are/become abandoned • Learn to place bets and switch every now and again © Robert Tochman-Szewc, 2017 10
  • 11. Step 5: Test Automa/on • Jest • Mock Na-ve Modules by hand • Mock states and use snapshots • Will save you countless hours debugging © Robert Tochman-Szewc, 2017 11
  • 13. Bonus Rant Present since at least May 2016, s3ll not reliably solved: Text Input © Robert Tochman-Szewc, 2017 13
  • 15. Links • Expo • React Naviga0on • Redux • React Na0ve Router Flux • React Na0ve UI Ki:en • Jest © Robert Tochman-Szewc, 2017 15