Skip to main content
DjangoPythonOpenWeather
Experience weather like never before with a futuristic, real-time, and visually stunning dashboard.

πŸ“Έ Screenshots

Main Screen Detailed View

🌟 Features

βœ… Live Weather Search β€” Search any city and get real-time weather updates. 🌑️ Temperature Metrics β€” Get detailed temperature readings including min/max values. πŸ’¨ Wind & Atmospheric Data β€” Know the wind speed, direction, and air pressure. ☁️ Cloud Coverage Visualization β€” Interactive visuals for sky conditions. πŸŒ… Sunrise & Sunset Timings β€” Plan your day with accurate sun movement data. πŸ“ Geolocation Support β€” Fetch weather data based on your real-time location. 🎨 Modern UI & Animations β€” A sleek, futuristic glassmorphism-inspired design. πŸ“± Fully Responsive Design β€” Works seamlessly across devices.

πŸ—οΈ System Architecture

πŸ“‚ Project Structure

πŸš€ Setup & Installation

1️⃣ Clone the Repository

git clone <repository-url>
cd weather_app

2️⃣ Install Dependencies

pip install -r requirements.txt

3️⃣ Configure Environment Variables

python -m venv venv
source venv/bin/activate  # On macOS/Linux
venv\Scripts\activate    # On Windows
Create a .env file and add:
OPENWEATHER_API_KEY=your_api_key_here

4️⃣ Apply Migrations & Run Server

python manage.py migrate
python manage.py runserver

5️⃣ Open in Browser

http://127.0.0.1:8000/

🎨 UI Components

✨ Premium Features:
  • Glassmorphism UI with smooth animations
  • Dynamic weather icons and backgrounds
  • Hover effects and modern transitions
  • Custom scrollbars and interactive cards
🌍 Weather Data Display:
  • Temperature breakdowns (Celsius/Fahrenheit)
  • Wind speed & direction indicators
  • Real-time cloud coverage and rain stats
  • Geolocation-based city detection

πŸ”Œ API Integration

πŸ”— OpenWeather API is used for fetching live weather data:
  • Current weather conditions
  • Temperature, wind, and cloud coverage
  • Geographic coordinates & timezone details

πŸ“± Responsive Design

πŸ”Ή Fully optimized for:
  • Desktop monitors πŸ–₯️
  • Tablets πŸ“±
  • Mobile devices πŸ“²
  • Various screen sizes πŸ”³

πŸ› οΈ Technical Stack

  • Backend: Django 5.1.5 (Python 3.12.6)
  • Frontend: HTML5, CSS3, Bootstrap 5
  • API: OpenWeather API
  • Icons: Font Awesome 6
  • Styling: Custom CSS with animations
  • Environment: python-decouple

🀝 Contributing

We welcome contributions! πŸš€
  1. Fork the repository 🍴
  2. Create your feature branch (git checkout -b feature-name) πŸ› οΈ
  3. Commit your changes (git commit -m 'Add some feature') πŸ”₯
  4. Push to the branch (git push origin feature-name) πŸš€
  5. Open a Pull Request πŸ’‘

πŸ“œ License

This project is licensed under the MIT License - see the LICENSE file for details.
🌩️ Made with β˜€οΈ and 🌧️ by BrianKN019

πŸ“§ Contact

For questions or feedback, reach out: πŸ“¨ Email: [email protected] 🌐 Portfolio: Brian Kimemia GitHub: BrianKN019
Thank you for exploring this project! Let’s innovate and build secure AWS solutions together. πŸš€