This is a frontend weather app created using Reactjs, Vite, Axios, Redux Toolkit, React Redux, and Luxon. The app fetches weather data from the user's current location using the geolocation API. Users can also search for weather data of different cities.
- Fetches current weather and conditions
- Provides hourly forecast for 24 hours
- Displays daily weather forecast for the next 7 days
- Dynamically changes background based on weather conditions
Check out the live demo here.
- Reactjs
- Vite
- Axios
- Redux Toolkit
- React Redux
- Luxon
To get a local copy up and running, follow these steps:
- Clone the repository
- Install dependencies using
npm install
- Register on https://www.visualcrossing.com and https://geocode.maps.co to get API key for weather data and geocoding
- Create .env file in the root directory and add weather API key as VITE_API_KEY and geocoding API key as VITE_GEOCODING_API_KEY
- Run the development server using
npm run dev
- Upon opening the app, it will ask for location permission to fetch weather data for the user's current location.
- Users can also search for weather data of different cities using the search feature.
Contributions are welcome! If you'd like to contribute to this project, please follow these steps:
- Fork the repository
- Create your feature branch (
git checkout -b feature/YourFeature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin feature/YourFeature
) - Open a pull request