# Basics - [ ] Learn how to start a new react native project - [ ] Run it on ios simulator, on android emulator, on a real iPhone device and on a real Android device, with and without debugging enabled. - [ ] Learn how to upgrade a react native project - [ ] Learn how to add a package to the project - [ ] Learn how to add a package that has a native dependency (https://github.com/airbnb/react-native-maps, https://github.com/evollu/react-native-fcm) - DO NOT USE COCOAPODS # Learn Navigation - [ ] (https://github.com/exponent/ex-navigation#an-important-note-about-the-future) - [ ] read this https://gist.github.com/knowbody/ce483742a1761658b767428a0ed35147 - [ ] Tab bar navigation (Sliding Tab navigation) - [ ] Drawer navigation (drawer menu) - [ ] Alert bar - [ ] Setup a boilerplate that has drawer + tab navigation - [ ] Challenge — Bottom tab navigation for IOS and Top Sliding Tab navigation for Android # Learn to do a Login/Register Flow - [ ] 3 screen before login (launch, login, register) - follow this: https://itunes.apple.com/us/app/brand-lovers-beleza-e-maquiagem/id1094374278?mt=8 - [ ] and some screen after login/register is done - [ ] do it with redux - [ ] do it without redux - [ ] Learn Redux (you don't need to use redux data everything, only in shared state) # Learn common mobile patterns - [ ] do a form using https://github.com/gcanti/tcomb-form-native - [ ] do the same form without tcomb-form-native - [ ] do a list of items (ListView and DataSource), work with sections. - [ ] implement a Modal (using component from react native) - [ ] change navigation transition style - [ ] work with social logins (facebook, google, twitter, and so on) - [ ] implement push notification - [ ] work with cameral roll - [ ] work with maps