Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/m-sehrawat/weather-app

This project is about building a web application to show a weather forecast using weather API.
https://github.com/m-sehrawat/weather-app

chakra-ui css javascript react react-redux redux vitejs

Last synced: 2 months ago
JSON representation

This project is about building a web application to show a weather forecast using weather API.

Awesome Lists containing this project

README

        

Weather App

![weather app cover](https://user-images.githubusercontent.com/91532881/166434542-76727ccb-0c98-4646-84fb-58e86d7ec3ff.png)

Web application to show the current and upcoming week weather forecast.




reactjs
redux
chakra-ui
restAPI
css3



Want to see live preview »







View Demo
Report Bug
Getting StartedInstalling
Author


This project is about building a web application to show a weather forecast using weather API from external services [Open weather map](https://openweathermap.org/). Here you will be able to search for a specific location in the world and also it will automatically detect your current location in the beginning (for that you need to allow location) and will display all the important weather details.

It have some cool features like save the weather data in redux-store and session-storage to reduce the dependency of network requests, search weather details according to the city, detect your current location for displaying weather data, shows a map of that location, sync data to get the latest updated details of the current weather, toast notification for every action, pop up modal to display extra details of seven-day forecast weather, cool zoom-in zoom-out animations and responsive for every screen size.

To use the app, type a name of the city and click on search/press Enter or else click on the Your location weather button, every time you click on the button first it will check if the data is available in the session storage or not, and if not then it will send a network request else it will take the data from session-storage.

## 🚀 Features
- Saving the weather data in redux-store and session-storage to reduce the dependency of network requests
- Search weather details according to the city
- Detect your current location for displaying weather data
- Shows a map of that location
- Sync data to get the latest updated details of the current weather
- Toast notification for every action
- Pop up modal to display extra details of seven-day forecast weather
- Cool zoom-in zoom-out animations
- Responsive for every screen size.


![Mobile responsive](https://user-images.githubusercontent.com/91532881/166426445-3aeee29c-bca7-4d95-a082-70269bb192fd.png)

![weatherapp](https://user-images.githubusercontent.com/91532881/166334689-ac7807e2-6d40-4a8f-b232-c53955f6ea03.png)

![weatherapp2](https://user-images.githubusercontent.com/91532881/166334796-48e0faa6-3e3c-46e5-9cd1-857da895379d.png)


## Demo

https://user-images.githubusercontent.com/91532881/166426542-b271be2e-e7d9-4b3c-bfe7-5e9e51e26be4.mp4


## Getting Started

This project was built using React v 17.0.2, Redux v 4.1.2, Chakra UI, CSS and Rest API. It is a web application and for running on your local environment you should follow these guidelines.

### Prerequisites

- NPM

### Setup

The project repository can be found in [GitHub link](https://github.com/m-sehrawat/Weather-App) or just clone the project using this command.

```
Using HTTPS

# git clone https://github.com/m-sehrawat/Weather-App.git
```

+ Open terminal on your workspace with

```
cd /home/workspace/Weather-App
```

## Install

Install NPM

Check that you have node and npm installed

To check if you have Node.js installed, run this command in your terminal:

```
node -v
```

To confirm that you have npm installed you can run this command in your terminal:

```
npm -v
```

To install all the dependences of the project, run the following command:

```
npm install
```

To run the application, run the following command:

```
npm run dev
```

### Tools used on this project

- Visual Studio Code
- Vite Js React Template


## Contact

If you want to contact me, you can reach me through below handles.

[![linkedin](https://img.shields.io/badge/Mohit_Sehrawat-0077B5?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/m-sehrawat/)
[![Twitter](https://img.shields.io/badge/Mohit_Sehrawat-20232A?style=for-the-badge&logo=Github&logoColor=white)](https://github.com/m-sehrawat/)

© 2022 Mohit Sehrawat

## Show your support

Give a ⭐️ if you like this project!