A premium interactive weather dashboard built with HTML, CSS, and JavaScript, featuring real-time weather data, immersive video backgrounds, glassmorphism UI, animated weather effects, interactive maps, and detailed weather analytics.
- Overview
- Features
- Tech Stack
- Project Structure
- Installation
- Configuration
- Usage
- Screenshots
- Future Improvements
- Contributing
- License
- Author
WeatherPulse is a modern weather application that transforms traditional weather forecasting into an engaging visual experience.
Instead of displaying only weather information, the application dynamically changes its background videos, weather animations, charts, and interface according to real-time atmospheric conditions.
The project combines modern frontend development techniques with external APIs and interactive data visualization to create a professional weather dashboard.
- Live weather data using OpenWeatherMap API
- Current temperature
- Feels-like temperature
- Humidity
- Wind Speed
- Pressure
- Visibility
- Weather description
- Weather icons
- Hourly Forecast
- 5-Day Forecast
- Daily High & Low temperatures
- Weather conditions
- Wind information
Automatically switches high-quality background videos depending on weather conditions.
Supported conditions include:
- Clear
- Clouds
- Rain
- Drizzle
- Snow
- Thunderstorm
- Mist
- Clear Night
- Default background
The application automatically determines whether it's daytime or nighttime using:
- Sunrise time
- Sunset time
and updates:
- Background video
- Theme colors
- Weather animations
Custom HTML5 Canvas weather effects:
- Rain particles
- Snow particles
- Lightning flashes
- Mist effects
All generated dynamically using JavaScript.
Powered by Leaflet.js
Features include:
- Interactive world map
- Automatic city positioning
- Dynamic location marker
- Smooth map movement
- Zoom controls
Interactive charts powered by Chart.js.
Visualizations include:
- 24-hour temperature trend
- Humidity trend
- Responsive animations
- Tooltips
- Live updates
Designed with a premium glassmorphism interface.
Features include:
- Blur effects
- Animated cards
- Responsive layout
- Gradient overlays
- Smooth transitions
- Hover animations
- Live UTC Clock
- Search any city
- Quick city search chips
- Temperature Unit Switcher (°C / °F)
- Scroll-to-top button
- Star Rating widget
- Social media links
- Fully responsive design
- Mobile friendly
- Desktop optimized
- HTML5
- CSS3
- JavaScript (ES6)
- OpenWeatherMap API
- Leaflet.js
- Chart.js
- Font Awesome
weather-pulse/
│
├── index.html
├── style.css
├── script.js
│
└── videos/
├── clear-day.mp4
├── clear-night.mp4
├── clouds.mp4
├── rain.mp4
├── drizzle.mp4
├── snow.mp4
├── thunder.mp4
├── mist.mp4
└── default.mp4
git clone https://github.com/YOUR_GITHUB_USERNAME/weather-pulse.git
cd weather-pulseCreate a free account at:
https://openweathermap.org/api
Generate an API key.
Open
script.jsReplace
const API_KEY = "YOUR_OPENWEATHERMAP_API_KEY";with
const API_KEY = "YOUR_API_KEY";Because browsers block local video autoplay from the file system, run the project using a local server.
Install Live Server
Right Click
index.html
Open with
Live Server
python -m http.server 5500Visit
http://127.0.0.1:5500
- Enter any city name.
- Press Search.
- View live weather conditions.
- Explore hourly and 5-day forecasts.
- Interact with the map.
- Switch between Celsius and Fahrenheit.
- Enjoy immersive weather animations and video backgrounds.
Add forecast screenshot here.
images/forecast.png
Add map screenshot here.
images/map.png
- Air Quality Index (AQI)
- Weather Alerts
- UV Index
- Multiple Saved Cities
- Voice Search
- Geolocation Detection
- Sunrise & Sunset Animation
- Radar Layer
- Weather News
- Offline Support (PWA)
- Weather History
- Theme Customization
- Multiple Languages
Contributions are welcome!
If you'd like to improve WeatherPulse:
- Fork the repository
- Create a new branch
git checkout -b feature-name- Commit your changes
git commit -m "Add new feature"- Push to your branch
git push origin feature-name- Open a Pull Request
This project is licensed under the Apache License 2.0.
You are free to:
- Use
- Modify
- Distribute
- Fork
- Create derivative works
under the terms of the Apache License 2.0.
See the LICENSE file for complete details.
Mobeen Fatima
https://github.com/MobeenFatimaa
https://www.linkedin.com/in/mobeen-fatima-599a35347/
If you found this project helpful, please consider giving it a ⭐ on GitHub.
It helps others discover the project and motivates future improvements.