OY
oyerohabib/country-info-app
A ReactNative app that displays a list of various countries and their details
Country Info Mobile App
A React Native mobile application that allows users to explore information about countries worldwide, with theme customization support.
Features
- View a list of all countries
- Search countries by name
- View detailed country information:
- Name
- Flag
- Capital city
- Population
- Continent
- Country code
- States/Provinces (if available)
- Theme customization (Light/Dark mode)
- Responsive design for various screen sizes
Prerequisites
- Node.js (v14 or later)
- npm or yarn
- Expo CLI
- iOS Simulator (for Mac) or Android Emulator
Installation
- Clone the repository:
git clone <repository-url>
cd country-info-app- Install dependencies:
npm install- Start the development server:
npx expo startUsage
- Launch the app on your device/emulator
- Browse through the list of countries
- Use the search bar to find specific countries
- Tap on a country to view detailed information
- Toggle between light and dark themes using the theme switch button
Dependencies
- React Native
- Expo
- React Navigation
- React Native Paper
- Axios
- AsyncStorage
Project Structure
country-info-app/
├── src/
│ ├── screens/
│ │ ├── HomeScreen.js
│ │ └── CountryDetailsScreen.js
│ ├── context/
│ │ └── ThemeContext.js
│ ├── utils/
│ │ └── api.js
│ └── assets/
├── App.js
├── package.json
└── README.md
API Reference
This app uses the REST Countries API to fetch country data.
Contributing
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
On this page
Contributors
Created February 14, 2025
Updated May 21, 2025