This app is a Weather Dashboard with search by city input, that uses the OpenWeather API to retrieve current weather and 5-day forecast data, and uses localStorage to store persistent data.
Functionality:
- When a user searches for a city they are presented with current and future conditions for that city and that city is added to the search history bar.
- If the city is not found, show an alert message to the user.
- When a user views the current weather conditions for that city they are presented with:
- The city name and the date
- An icon representation and background image of weather conditions
- The temperature and Feels like
- The humidity
- The wind speed
- When a user views future weather conditions for that city they are presented with a 5-day forecast that displays:
- The date
- An icon representation of weather conditions
- The min and max temperatures
- The wind speed
- The humidity
- When a user clicks on a city in the search history bar they are again presented with current and future conditions for that city
AS A traveler,
I WANT to see the weather outlook for multiple cities,
SO THAT I can plan a trip accordingly.The following image shows the web application's appearance and functionality:

- Repository URL: https://github.com/berta-rf/forecast-dashboard
- Live Site URL: https://berta-rf.github.io/forecast-dashboard
- OpenWeather API
- jQuery
- Luxon
- JavaScript
- HTML
- CSS
- Bootstrap
- How to Handle Unsuccessful Fetch API Calls in JavaScript
- MDN docs on statements throw & catch
- Luxon API docs
- Article on localStorage
- OpenWeather API docs
- Unsplash (weather conditions images)
- Berta Romano Fernandez bertaromanofernandez@gmail.com
- GitHub berta-rf
- LinkedIn Berta Romano Fernandez
- Frontend Mentor @berta-rf
Distributed under the MIT license. See LICENSE for more information.
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request