Task: Build a React Native app that:
- Displays a list of countries along with a high-level overview of each country using the API from https://restcountries.com/ to fetch country information.
- Includes an input field. As a user types in this field, the list should update to display only the countries whose names match the input. For example, typing 'Al' should filter the list to show "Albania" and "Algeria" along with their respective details.
- You are encouraged to add any additional features or enhancements as you deem appropriate.
We'll be assessing both your code quality and your sense of design. You are welcome to use any third-party libraries. Please document any potential enhancements or changes that you think would improve the app but did not have the time to implement.
This is an Expo project created with create-expo-app
.
-
Install dependencies
npm install
-
Start the app
npx expo start
In the output, you'll find options to open the app in a
- development build
- Android emulator
- iOS simulator
- Expo Go, a limited sandbox for trying out app development with Expo
You can start developing by editing the files inside the app directory. This project uses file-based routing.
When you're ready, run:
npm run reset-project
This command will move the starter code to the app-example directory and create a blank app directory where you can start developing.
To learn more about developing your project with Expo, look at the following resources:
- Expo documentation: Learn fundamentals, or go into advanced topics with our guides.
- Learn Expo tutorial: Follow a step-by-step tutorial where you'll create a project that runs on Android, iOS, and the web.
Join our community of developers creating universal apps.
- Expo on GitHub: View our open source platform and contribute.
- Discord community: Chat with Expo users and ask questions.