Skip to content

RodoAgusSM/Web_Weather_4_U

Repository files navigation

🌤️ Weather4U

React TypeScript PWA License

A modern, responsive Progressive Web App for real-time weather updates and air quality monitoring across the globe.

Weather4U delivers comprehensive weather information with a beautiful, intuitive interface that works seamlessly across all devices. Built with React, TypeScript, and modern web technologies.

✨ Features

🌍 Global Weather Coverage

  • Real-time weather data for any city worldwide
  • Comprehensive weather metrics including temperature, humidity, pressure, wind, and visibility
  • Automatic location detection and manual city search

🔄 Smart Updates

  • Auto-refresh every 30 minutes for current data
  • Manual refresh option for instant updates
  • Intelligent caching for optimal performance

🌈 Air Quality Monitoring

  • Real-time Air Quality Index (AQI) data
  • Detailed pollutant breakdown (PM2.5, PM10, O3, NO2, SO2, CO)
  • Color-coded quality indicators and health recommendations

🎨 Modern UI/UX

  • Dark/Light/System Theme: Automatic theme switching based on user preference
  • Responsive Design: Optimized for desktop, tablet, and mobile devices
  • Progressive Web App: Install on any device for native app-like experience
  • Smooth Animations: Beautiful starlight animations and transitions
  • iOS Optimized: Enhanced experience for iOS Safari and PWA installation

🌐 Internationalization

  • Multi-language Support: English, Spanish, Portuguese, French
  • Dynamic Translations: All content adapts to selected language
  • Localized Date/Time: Format adapts to language preferences

⚙️ Customization

  • Imperial/Metric Units: Toggle between measurement systems with persistence
  • Theme Persistence: Your preferences are saved across sessions
  • Location Memory: Remembers your last searched location

🔧 Technical Excellence

  • Clean Architecture: Domain-driven design with clear separation of concerns
  • TypeScript: Full type safety and enhanced developer experience
  • Performance Optimized: Lazy loading, code splitting, and efficient state management
  • Error Handling: Robust error boundaries and graceful fallbacks

📱 Demo

Web Version

Weather4U Web Demo

Mobile Version

Weather4U Mobile Demo

🚀 Quick Start

Prerequisites

  • Node.js (v16 or higher)
  • npm or yarn package manager
  • OpenWeatherMap API key (free at openweathermap.org)

Installation

  1. Clone the repository

    git clone https://github.com/RodoAgusSM/Web_Weather_4_U.git
    cd Web_Weather_4_U/Weather_4_U
  2. Install dependencies

    npm install
    # or
    yarn install
  3. Set up environment variables

    Create a .env file in the root directory:

    REACT_APP_WEATHER_API_KEY=your_openweathermap_api_key_here
  4. Start development server

    npm start
    # or
    yarn start
  5. Open your browser Navigate to http://localhost:3000 and enjoy real-time weather updates!

Build for Production

npm run build
# or
yarn build

🏗️ Architecture

Weather4U follows Clean Architecture principles:

src/
├── application/        # Use cases and business logic
├── domain/            # Entities and domain models
├── infrastructure/    # External services and data sources
├── presentation/      # React components and UI logic
├── shared/           # Common utilities and types
├── styles/           # Global styles and themes
└── translations/     # Internationalization files

Key Technologies

  • Frontend: React 18, TypeScript, Styled Components
  • State Management: React Context API with custom hooks
  • API Integration: OpenWeatherMap API
  • Styling: CSS-in-JS with styled-components
  • Internationalization: react-i18next
  • Build Tool: Create React App with custom configurations

🌟 Contributing

Contributions are welcome! This project is actively maintained and open to improvements.

Development Guidelines

  1. Follow the existing code style and architecture patterns
  2. Write meaningful commit messages
  3. Test your changes across different devices and browsers
  4. Update documentation when adding new features

📄 License

All Rights Reserved

This project is the intellectual property of Rodolfo Agustín Silva Messano, Software Engineer from Montevideo, Uruguay.

Unauthorized copying, modification, distribution, or use of this software is strictly prohibited without explicit written permission from the author.

👨‍💻 Author

Rodolfo Agustín Silva Messano
Software Engineer | Montevideo, Uruguay


Made with ❤️ in Uruguay

Weather4U - Your gateway to global weather information

About

Responsive app to view the weather of any city around the world.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages