A web app that allows users to find detailed weather information of their preference for cities across the globe. Built with Flask, HTML/CSS/JS/Bootstrap Styling, and deployed on Vercel.
This web app is the final version of a three-part evolution:
- Jordan Weather Identifier v1 - The Prototype: First Python GUI using static File I/O.
- City Weather Identifier v2 - Data Viz: Desktop app with live API integration and Seaborn/Matplotlib graphs.
- City Weather Identifier v3 (This Repo) - Full-Stack: Responsive web app with Flask backend and Pandas data processing.
- Retrieve current temperature or hourly/daily weather statistics for any city.
- Data Granularity: Unlike v2's weekly overview, v3 provides both high-resolution hourly data & high-resolution weekly data using Pandas for backend processing
- Responsive design: works on mobile, tablet, and desktop.
- Smart Validation: Filters out non-city regions to ensure data accuracy.
Check out the live app here: City Weather Identifier
- Backend: Python 3.13, Flask
- APIs: Geopy (Nominatim), Open-Meteo, Timezonefinder
- Data Processing: Pandas
- Frontend: HTML, CSS, JavaScript, Bootstrap
- Deployment: Vercel
git clone https://github.com/Skayyali3/City-Weather-Identifier-v3.git
cd City-Weather-Identifier-v3python -m venv venv
source venv/bin/activate # Linux/macOS
venv\Scripts\activate # Windowspip install -r requirements.txtpython main.py
# Open your browser to http://127.0.0.1:5000 to check out the Weather Site LocallyThis project is licensed under the MIT License – see the LICENSE file for details.
Saif Kayyali