- Clone the git repo locally
npm install
npm run ios
- runs the app in an iOS simulator (requires XCode on a Mac)npm run android
- runs the app in an Android simulator- ...or download the Expo app,
npm start
, and use the app to snap the QR code displayed in the terminal
- Type your movie title search in the bar and hit return to run it
- The list scrolls "infinitely". Since OMDB API calls only return 10 results at a time it's a bit clunky, but the app should continuously pull results as you scroll until the query runs out or it reaches 1000 results (the API limit)
- Pressing the heart icon saves the query in your favorites list
- Access your favorites and history list by swiping from the left side of the screen
- Create React Native App: ever since I heard about this at React Conf 2017 I've been wanting to try it out for myself. Being able to dive in and start writing React components with minimal setup/configuration is a huge win.
- Recompose: The concept of higher-order components makes writing and maintaining React codebases a lot easier. It cleanly separates functionality from presentation.
- React Native Elements: Design is definitely not my forté so any help I can get in that domain is welcome. For an MVP-type app this library provides a nice UI foundation quickly.
- I really wanted to try out the new and improved ListView variants in react-native 0.43. I would have gone with FlatList for this demo, but Expo and create-react-app haven't quite had time to update to the new RN release yet.
- As mentioned above, I'm no designer so this demo could use some better styling. A nice shadow effect on the right edge of the side menu, a little more color and accents here and there. But hey, it's just a demo.
- The scale of this app didn't really necessitate a full-on navigation solution, but if I did come back to it I'd probably try out React Navigation, React Native Navigation, or even cook up something with the native flavor of React Router v4 if I got really ambitious.