Weather Forecast
Overview
In this project, I leveraged existing NOAA API endpoints to create an app that allows users to get the weather forecast for their area. NOAA is a highly acclaimed weather source and offers free API access, making it an ideal choice for this project.
Challenges and Solutions
A key consideration in developing this app was ensuring ease of use for the user. Initially, I aimed for users to input their zip code to get weather information. However, the NOAA API requires latitude and longitude coordinates. To bridge this gap, I implemented a conversion process that translates zip codes into latitude and longitude coordinates, which are then used as parameters for the API requests. The initial API response provides multiple endpoints, from which I parsed the forecast endpoint and transformed the data into a DataFrame.
Features
The project includes a comprehensive Python notebook detailing the development of the API calls and data transformations. Additionally, the web app (Streamlit framework), hosted on Heroku, enables users to input any US zip code and receive temperature trends and detailed forecast information for the near future.
Future Enhancements
Potential improvements for the app include better exception handling and allowing users to input a typed location rather than just a zip code. Working on the layout and css to enhance the user experience would also be on the docket.
Conclusion
The Weather Forecast App demonstrates my ability to integrate third-party APIs, handle data transformations, and deploy web applications on platforms like Heroku. This project highlights my skills in API development, data processing, and user-friendly application design, showcasing my capability to create practical and accessible tools for real-world use.