Skip to content

This React Native application is designed to provide weather forecasts for various cities. It leverages the OpenWeatherMap API to deliver current and weekly weather updates.

Notifications You must be signed in to change notification settings

Hamzzay/weather-app

Repository files navigation

This is a new React Native project, bootstrapped using @react-native-community/cli.

Getting Started

Note: Make sure you have completed the React Native - Environment Setup instructions till "Creating a new application" step, before proceeding.

Step 1: Start the Metro Server

First, you will need to start Metro, the JavaScript bundler that ships with React Native.

To start Metro, run the following command from the root of your React Native project:

# using npm
npm start

# OR using Yarn
yarn start

Step 2: Start your Application

Let Metro Bundler run in its own terminal. Open a new terminal from the root of your React Native project. Run the following command to start your Android or iOS app:

For Android

# using npm
npm run android

# OR using Yarn
yarn android

For iOS

# using npm
npm run ios

# OR using Yarn
yarn ios

If everything is set up correctly, you should see your new app running in your Android Emulator or iOS Simulator shortly provided you have set up your emulator/simulator correctly.

This is one way to run your app — you can also run it directly from within Android Studio and Xcode respectively.

Step 3: Modifying your App

Now that you have successfully run the app, let's modify it.

  1. Open App.tsx in your text editor of choice and edit some lines.

  2. For Android: Press the R key twice or select "Reload" from the Developer Menu (Ctrl + M (on Window and Linux) or Cmd ⌘ + M (on macOS)) to see your changes!

    For iOS: Hit Cmd ⌘ + R in your iOS Simulator to reload the app and see your changes!

How the App Works

Overview

This React Native application is designed to provide weather forecasts for various cities. It leverages the OpenWeatherMap API to deliver current and weekly weather updates.

Main Components

  • Home Screen: Displays the current weather for the user's location and a list of cities added by the user. Users can tap on a city to view detailed weather information.

  • Detail Weather Screen: Provides detailed weather data for a selected city, including current temperature, weather conditions, and a 5-day forecast.

  • Add City Screen: Allows users to search for cities and add them to their list for quick access to weather updates.

Key Features

  • Location-Based Weather: The app uses the device's geolocation to fetch and display weather data for the user's current location.
  • City Management: Users can add or remove cities from their list to view weather updates for those locations.
  • Interactive UI: The app includes Lottie animations and a user-friendly interface to enhance the user experience.

API Integration

The app integrates with the OpenWeatherMap API to fetch weather data. Ensure you have a valid API key configured in the codebase.

State Management

The app uses Redux for state management, which helps in efficiently handling weather data and user interactions.

Congratulations! 🎉

You've successfully run and modified your React Native App. 🥳

Now what?

Troubleshooting

If you can't get this to work, see the Troubleshooting page.

Learn More

To learn more about React Native, take a look at the following resources:

About

This React Native application is designed to provide weather forecasts for various cities. It leverages the OpenWeatherMap API to deliver current and weekly weather updates.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •