Skip to content

JayeshJadhav28/WeatherBuddy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

8 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

WeatherBuddy Logo

🌀 WeatherBuddy

Beautiful Real-Time Weather App β€” Forecasts, Themes & More

HTML5 CSS3 JavaScript Python Netlify License


πŸš€ Live Demo Β· 🌐 Portfolio Β· πŸ› Report Bug Β· ✨ Request Feature


WeatherBuddy Demo

πŸ“Œ Table of Contents


🧠 About

WeatherBuddy is a clean, visually stunning weather application that delivers real-time weather conditions and 5-day forecasts right in your browser. Featuring smooth animations, a dark/light theme toggle, and location-based search β€” it's your go-to weather companion.

Search any city. Get the weather. Switch the vibe. πŸŒ™β˜€οΈ


✨ Features

Feature Description
🌑️ Current Conditions Live temperature, humidity, wind speed & weather state
πŸ“… 5-Day Forecast Extended forecast with daily highs & lows
πŸ” Location Search Search weather for any city worldwide
πŸŒ™ Dark / Light Theme Toggle between themes with smooth transitions
πŸ“± Fully Responsive Optimized for mobile, tablet & desktop
✨ Smooth Animations CSS & JS-powered micro-interactions

πŸ›  Tech Stack

Layer Technology
Markup HTML5
Styling CSS3 (Modular β€” main, animations, responsive)
Logic Vanilla JavaScript (ES6+)
Backend Python (server.py)
Weather Data OpenWeatherMap API (or equivalent)
Deployment Netlify

πŸš€ Getting Started

Prerequisites

# For frontend-only usage
A modern browser is all you need!

# For running the Python server
python >= 3.8

Installation

# 1. Clone the repository
git clone https://github.com/JayeshJadhav28/WeatherBuddy.git

# 2. Navigate into the project
cd WeatherBuddy

# 3. Install Python dependencies (if using server)
pip install -r requirements.txt

# 4. Set up your API key (see Configuration below)
cp config.example.js config.js
# Then edit config.js and add your API key

# 5a. Open directly in browser (static)
open index.html

# 5b. OR run the Python server
python server.py

πŸ“ Project Structure

WeatherBuddy/
β”œβ”€β”€ assets/
β”‚   └── icons.svg              # Weather icon set
β”œβ”€β”€ styles/
β”‚   β”œβ”€β”€ main.css               # Core styles
β”‚   β”œβ”€β”€ animations.css         # Animation styles
β”‚   └── responsive.css         # Media queries
β”œβ”€β”€ scripts/
β”‚   β”œβ”€β”€ main.js                # App entry point
β”‚   β”œβ”€β”€ weather.js             # API calls & data handling
β”‚   └── animations.js         # UI animation logic
β”œβ”€β”€ config.example.js    
β”œβ”€β”€ index.html                 # Main HTML entry
β”œβ”€β”€ server.py                  # Python backend server
β”œβ”€β”€ requirements.txt           # Python dependencies
β”œβ”€β”€ netlify.toml               # Netlify deployment config
└── package.json               # Project metadata

🌍 Deployment

WeatherBuddy is deployed on Netlify.

Deploy to Netlify

Set your API key as a Netlify environment variable (recommended):

  1. Go to Netlify Dashboard β†’ Site Settings β†’ Environment Variables
  2. Add WEATHER_API_KEY = your actual key
  3. Update config.js to read from the environment

🀝 Contributing

git checkout -b feature/your-feature-name
git commit -m "feat: add your feature"
git push origin feature/your-feature-name
# Open a Pull Request πŸš€

πŸ‘€ Author

Jayesh Jadhav

GitHub Portfolio


⭐ Found WeatherBuddy useful? Drop a star! ⭐

Made with ❀️ and Vanilla JS

About

🌀 Real-time weather app with 5-day forecast, dark/light theme & smooth animations

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors