Overview
I've put together for you an entire visual cheatsheet of all of the concepts and skills you need to master React in 2020. But don't let the label 'cheatsheet' fool you. This is more than a mere summary of React's features. My aim here was to clearly and concisely put. Extended StyleSheets for React Native. React Native Extended StyleSheet A StyleSheet is an abstraction similar to CSS StyleSheets Drop-in replacement of React Native StyleSheet with media-queries, variables, dynamic themes, relative units, percents, math operations, scaling and other styling. For us, this made writing React Native stylesheets feel very familiar. But after we scratched the surface it became clear that styling in React Native is very different to styling on the web. In fact, rule names and flexbox are just about the only thing that CSS and React Native styles have in common. Formik is a simple React/React Native form library that helps with handling form state, input validation, formatting, error handling, form submission, amongst other things. Formik keeps everything simple under the hood using react state and pros making it easy to understand, integrate, debug, and test your forms.
This course teaches the fundamentals of cross-platform mobile application development with a focus on the React Native framework (RN). The goal is to help students develop best practices in creating apps for both iOS and Android by using Javascript and existing web + mobile development paradigms. Students will explore the unique aspects that made RN a primary tool for mobile development within Facebook, Instagram, Airbnb, Walmart, Tesla, and UberEats.
Course logistics
Application | The course is limited to 20 students, who will be selected by application. The application is currently closed. |
Date/Time | T/Th 1:30PM - 2:50PM |
Location | Econ 139 |
Units | 2 Pass/Fail |
Instructors | Santiago Gutierrez (santig@stanford.edu) Abdallah Abuhashem (aabuhash@stanford.edu) |
Faculty Sponsor | James Landay (landay@stanford.edu) |
Staff email | cs47si-win1718-staff@lists.stanford.edu |
Office hours | Abdallah: Mon 12:00PM - 2:00PM at Forbes Cafe Santiago: Thu 04:30PM - 06:30PM in Lathrop Library (Learning Hub / Tech Desk) |
Prerequisites | At least one of the following: CS142, CS193P, CS193A (or equivalent Web/Mobile development experience) |
Explore courses | CS47SI |
Schedule
Week 1 (1/09 - 1/11)
Course logistics and basic overview of React Native.
Introduction to Javascript (ES6), JSX and Babel. We will be exploring the structure of a React Native app and creating an application from scratch.
Week 2 (1/16 - 1/18)
Creating and styling interfaces using basic components. StyleSheet + Flexbox.
Creating and controlling components using State and Props.
Week 3 (1/23 - 1/25)
We will be modifying our code from last class and introducing new components. ScrollView, TextInput, and Lists.
This class is divided into two parts! We will use and 'break' third party components.
Week 4 (1/30 - 2/1)
Overview of JS promises. Persistence of data using AsyncStorage and SQLite.
Different navigtors (Stack, Tab, Drawer) using React Navigation.
Week 5 (2/6 - 2/8)
Topics: history and development of RN, internal uses (Instagram), and state management via Redux.
We will be putting some navigation concepts to practice.
Week 6 (2/13 - 2/15)
Continuation from last lecture!
Week 7 (2/20 - 2/22)
We will use Firebase to build a chat room application. Part of advanced topics.
Discussion about React Native projects with Native code. Native modules.
Week 8 (2/27 - 3/1)
Demo of Realm (local storage database) and animations.
Week 9 (3/6 - 3/8)
Demo of Realm (local storage database) and animations.
Charlie Cheever (CEO) talks about Expo+RN now and in the future.
Week 10 (3/13 - 3/15)
Readings
NOTE: you might need to be logged in to your Stanford account to access some content.
React Js Stylesheet
This course teaches the fundamentals of cross-platform mobile application development with a focus on the React Native framework (RN). The goal is to help students develop best practices in creating apps for both iOS and Android by using Javascript and existing web + mobile development paradigms. Students will explore the unique aspects that made RN a primary tool for mobile development within Facebook, Instagram, Airbnb, Walmart, Tesla, and UberEats.
Course logistics
Application | The course is limited to 20 students, who will be selected by application. The application is currently closed. |
Date/Time | T/Th 1:30PM - 2:50PM |
Location | Econ 139 |
Units | 2 Pass/Fail |
Instructors | Santiago Gutierrez (santig@stanford.edu) Abdallah Abuhashem (aabuhash@stanford.edu) |
Faculty Sponsor | James Landay (landay@stanford.edu) |
Staff email | cs47si-win1718-staff@lists.stanford.edu |
Office hours | Abdallah: Mon 12:00PM - 2:00PM at Forbes Cafe Santiago: Thu 04:30PM - 06:30PM in Lathrop Library (Learning Hub / Tech Desk) |
Prerequisites | At least one of the following: CS142, CS193P, CS193A (or equivalent Web/Mobile development experience) |
Explore courses | CS47SI |
Schedule
Week 1 (1/09 - 1/11)
Course logistics and basic overview of React Native.
Introduction to Javascript (ES6), JSX and Babel. We will be exploring the structure of a React Native app and creating an application from scratch.
Week 2 (1/16 - 1/18)
Creating and styling interfaces using basic components. StyleSheet + Flexbox.
Creating and controlling components using State and Props.
Week 3 (1/23 - 1/25)
We will be modifying our code from last class and introducing new components. ScrollView, TextInput, and Lists.
This class is divided into two parts! We will use and 'break' third party components.
Week 4 (1/30 - 2/1)
Overview of JS promises. Persistence of data using AsyncStorage and SQLite.
Different navigtors (Stack, Tab, Drawer) using React Navigation.
Week 5 (2/6 - 2/8)
Topics: history and development of RN, internal uses (Instagram), and state management via Redux.
We will be putting some navigation concepts to practice.
Week 6 (2/13 - 2/15)
Continuation from last lecture!
Week 7 (2/20 - 2/22)
We will use Firebase to build a chat room application. Part of advanced topics.
Discussion about React Native projects with Native code. Native modules.
Week 8 (2/27 - 3/1)
Demo of Realm (local storage database) and animations.
Week 9 (3/6 - 3/8)
Demo of Realm (local storage database) and animations.
Charlie Cheever (CEO) talks about Expo+RN now and in the future.
Week 10 (3/13 - 3/15)
Readings
NOTE: you might need to be logged in to your Stanford account to access some content.