Skip to content

WasuVa/wether-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

7 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🌍 Country & Weather Explorer

Discover the World with Real-Time Information

HTML5 CSS3 JavaScript License

Features β€’ Demo β€’ Installation β€’ Usage β€’ API References β€’ Contributing

Project Banner


πŸ“‹ Table of Contents


🎯 About

Country & Weather Explorer is a modern, interactive web application that combines country information and real-time weather data in one seamless experience. Built with vanilla JavaScript, this project demonstrates clean code practices, responsive design, and API integration.

🌟 Why This Project?

  • πŸ” Comprehensive Information: Get detailed country statistics and current weather conditions
  • 🎨 Dynamic Backgrounds: Weather-based background themes that change with conditions
  • πŸ“± Fully Responsive: Perfect experience on desktop, tablet, and mobile devices
  • πŸŒ“ Dark Mode Support: Toggle between light and dark themes
  • ⚑ Fast & Lightweight: No heavy frameworks, pure vanilla JavaScript

✨ Features

πŸ—ΊοΈ Country Explorer

  • 🏴 Country Information: Search for any country and get detailed data
  • πŸ“Š Comprehensive Stats:
    • Population statistics
    • Capital city information
    • Regional data
    • Currency details
    • Official languages
    • Time zones
  • πŸ›‘οΈ Visual Elements: National flags and coat of arms
  • πŸ—ΊοΈ Interactive Maps: See country locations on embedded maps

🌀️ Weather Explorer

  • β›… Real-Time Weather: Current weather conditions for any location
  • 🌑️ Detailed Metrics:
    • Temperature (actual & feels like)
    • Humidity levels
    • Wind speed & direction
    • Atmospheric pressure
    • UV index
    • Visibility
    • Cloud cover
  • 🌬️ Air Quality: Real-time air quality information
  • 🎨 Dynamic Backgrounds: Background changes based on weather conditions:
    • β˜€οΈ Sunny/Clear
    • ☁️ Cloudy
    • 🌧️ Rainy
    • ❄️ Snowy
    • β›ˆοΈ Thunderstorm
    • 🌫️ Foggy/Misty

🎨 UI/UX Features

  • πŸŒ“ Theme Toggle: Switch between light and dark modes
  • πŸ“± Responsive Design: Optimized for all screen sizes
  • 🎭 Smooth Animations: Elegant transitions and effects
  • πŸ” Smart Search: Search by country name or city
  • πŸ“ Modern Layout: Clean, card-based interface
  • 🎯 Intuitive Navigation: Easy-to-use navigation menu

πŸ› οΈ Technologies Used

Technology Purpose
HTML5 Structure & Markup
CSS3 Styling & Animations
JavaScript Functionality & Logic
Google Fonts Typography
SweetAlert2 Beautiful Alerts

πŸ“¦ Installation

Prerequisites

  • A modern web browser (Chrome, Firefox, Safari, Edge)
  • Basic understanding of HTML/CSS/JavaScript (for development)
  • API keys (see API References)

Quick Start

  1. Clone the repository

    git clone https://github.com/yourusername/country-weather-explorer.git
  2. Navigate to the project directory

    cd country-weather-explorer
  3. Set up API keys

    • Open js/app.js
    • Add your API keys:
      const WEATHER_API_KEY = 'your_weather_api_key';
      const COUNTRY_API_KEY = 'your_country_api_key'; // if required
  4. Open the application

    • Open index.html in your web browser
    • Or use a local server:
      # Using Python
      python -m http.server 8000
      
      # Using Node.js
      npx http-server
  5. Start Exploring! πŸš€


πŸš€ Usage

Country Search

  1. Navigate to the Country Explorer section
  2. Enter a country name in the search box
  3. Click the Search button or press Enter
  4. View detailed country information including:
    • Flag and coat of arms
    • Population and capital
    • Languages and currency
    • Interactive map

Weather Search

  1. Go to the Weather Explorer section
  2. Enter a city or country name
  3. Click Search Weather
  4. Get real-time weather data:
    • Current temperature
    • Weather conditions
    • Humidity, wind, pressure
    • Air quality index
  5. Watch the background change to match the weather! 🌈

Theme Toggle

  • Click the πŸŒ™/β˜€οΈ icon in the navigation bar
  • Switch between dark and light themes
  • Preference is saved automatically

πŸ”Œ API References

This project uses the following APIs:

1. REST Countries API

  • Purpose: Country information
  • Documentation: restcountries.com
  • Endpoint: https://restcountries.com/v3.1/
  • Free: βœ… Yes
  • Authentication: ❌ Not required

2. Weather API (WeatherAPI.com or OpenWeatherMap)

  • Purpose: Real-time weather data
  • Documentation: weatherapi.com
  • Free Tier: βœ… Available
  • Authentication: βœ… API Key required
  • Sign up: Get Free API Key

3. Map Integration (Optional)

  • Purpose: Interactive maps
  • Options:
    • Google Maps API
    • Leaflet.js with OpenStreetMap
    • Mapbox

πŸ“Έ Screenshots

Hero Section

Hero Section

Country Explorer

Country Explorer

Weather Dashboard

Weather Dashboard

Dark Mode

Dark Mode


πŸ“ Project Structure

wether-app/
β”‚
β”œβ”€β”€ index.html              # Landing page
β”œβ”€β”€ home.html              # Main application page
β”œβ”€β”€ README.MD              # Project documentation
β”‚
β”œβ”€β”€ css/
β”‚   └── styles.css         # Main stylesheet
β”‚
β”œβ”€β”€ js/
β”‚   └── app.js             # Application logic
β”‚
└── assets/                # Images and icons (if any)
    β”œβ”€β”€ images/
    └── icons/

🎨 Color Scheme

The project uses dynamic weather-based color schemes:

Weather Colors
β˜€οΈ Sunny #667eea β†’ #764ba2
☁️ Cloudy #bdc3c7 β†’ #2c3e50
🌧️ Rainy #4b6cb7 β†’ #182848
❄️ Snowy #e6dada β†’ #274046
β›ˆοΈ Thunder #2c3e50 β†’ #000000
🌫️ Foggy #757f9a β†’ #d7dde8

🀝 Contributing

Contributions are what make the open-source community amazing! Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ’‘ Ideas for Contribution

  • Add 7-day weather forecast
  • Implement geolocation for automatic weather detection
  • Add more weather animations
  • Create country comparison feature
  • Add historical weather data
  • Implement unit tests
  • Add accessibility improvements
  • Create mobile app version

πŸ“ License

Distributed under the MIT License. See LICENSE file for more information.


πŸ‘¨β€πŸ’» Author

WasuVa Creation

GitHub LinkedIn Twitter Portfolio


πŸ™ Acknowledgments


πŸ“Š Project Stats

GitHub stars GitHub forks GitHub watchers


⭐ Star this repository if you found it helpful!

Made with ❀️ by WasuVa Creation

Β© 2025 Country & Weather Explorer. All Rights Reserved.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors