videoplayback.mp4
This is a basic React Native app that hits the NYT APIs via a local server, featuring redux state management, search for articles with infinite scroll pagination, token authentication with in-place refresh and more!
This project is build using React Native 0.68.3
.
Node 13 or greater is required. Development for iOS requires a Mac and Xcode 10 or up, and will target iOS 11 and up.
- Clone this repository
- Open Terminal/CMD and cd server
- Type
npm install
cd testAssaignment
- Type
npm install
- Start metro
npx react-native start
-
- for Android type
npx react-native run-android
- for iOS
cd ios
thenpod install
and finally go back totestAssaignment
and hitnpx react-native run-ios
- for Android type
Very important
Before starting, make sure to edit the .env file in testAssaignment
and add your machine IP4 address instead.
-
Two Terminal/CMD windows are required to run the application.
-
To run the server type
cd server
thennpm run start-auth
-- This will not register the changes untill the rerun of the server! To run the server while saving changes (recommneded) --installsudo npm install -g --force nodemon
then you can start the server while listening on changes (like user regestration) by running the server throughnodemon server.js
-
Go to second Terminal window and type
npm start
DONE!
Type npm test -- --coverage
- This app was built for the purpose of demonstration and may include some bugs.
- I'm using a free Key from NYT so there's a quota per day and it might affect the fast infinite scroll.
- The Server needs a listerner to registred changes, so a SignUp data save needs a server reboot! (solved above).
The app features clean design that adapts to Android and iOS specific guidlines.