WeatherVista is a web application that provides real-time weather information for any city you search. It uses the OpenWeatherMap API to fetch current weather data and displays it in a clean and attractive user interface.
- Real-Time Weather: Fetches and displays current temperature, weather description, humidity, and wind speed.
- User-Friendly Interface: Attractive and responsive design with an animated background.
- City Search: Allows users to search for weather in any city.
- Error Handling: Displays clear error messages for invalid city names.
- .env Support: Uses a
.envfile to securely store your OpenWeatherMap API key.
- Python: Backend logic and API integration
- Flask: Web framework for creating the application
- Requests: For making HTTP requests to the OpenWeatherMap API
- python-dotenv: For managing environment variables
- HTML/CSS: Frontend design and layout
- OpenWeatherMap API: For weather data
Ensure you have the following installed:
- Python 3.6+
pip(Python package installer)
- Clone the repository:
git clone <repository_url> cd WeatherVista
```bash
python -m venv venv
source venv/bin/activate # On macOS/Linux
venv\Scripts\activate # On Windows
WeatherVista is deployed on Microsoft Azure App Service with end-to-end DevOps implementation.
- Hosted on Azure App Service
- 🌐 Live Link: WeatherVista
- Deployment is done using GitHub CI/CD workflows.
- GitHub Actions: Automatically builds and deploys on every push to the main branch.
- Zero downtime deployment with integrated build steps.
- Environment Variables: API keys and secrets are securely stored in Azure Application Settings, not in the code repository.
- No sensitive data checked into version control.
- Azure Monitoring Enabled: View real-time logs in:
- KUDU (Advanced Tools)
- Azure App Service > Logs section
- Application health and error tracking are turned on for better observability.
- This application uses Azure Cosmos DB to store and manage weather-related or user-specific data (if applicable).
- Cosmos DB provides scalable, globally distributed database capabilities with high availability.
- Future enhancements may include storing search history, user preferences, or weather logs in Cosmos DB.
- Application logs are archived and can be used with Azure Log Analytics.
- Automated alerts can be configured for error patterns or high latency.
- 5-day weather forecast integration
- Location-based weather detection
- Weather icons and improved animations
- Mobile-first enhancements
Feel free to fork, star, and contribute to this project! 😊
For any questions or feature requests, raise an issue or contact via GitHub.