Skip to content

Modern, responsive weather application built with React + Vite and Tailwind CSS. Features real-time weather data from OpenWeatherMap API, dynamic backgrounds based on conditions, and beautiful UI with smooth animations. Displays temperature, humidity, wind speed, visibility & more. Fully mobile-responsive! 🌀️

Notifications You must be signed in to change notification settings

Jenidevops/weather-forcasts-app

Repository files navigation

β›… Weather Now - Modern Weather Forecast Application

React Vite TailwindCSS GitHub Pages

A sophisticated weather forecasting application built with modern web technologies. Features a stunning glassmorphism UI design, real-time weather updates, and seamless user experience.

Weather Now Demo

🌟 Key Features

  • Real-Time Weather Data: Instant access to current weather conditions worldwide
  • Modern UI/UX:
    • Glassmorphism design elements
    • Fluid animations and transitions
    • Responsive layout for all devices
  • Dynamic Theming: Background adapts to current weather conditions
  • Error Handling: Robust error management with user-friendly messages
  • Performance Optimized: Built with modern web performance practices

πŸ› οΈ Technology Stack

  • Frontend Framework: React 18 with Hooks
  • Build Tool: Vite
  • Styling: TailwindCSS with custom animations
  • API Integration: OpenWeatherMap API
  • State Management: React Context + Hooks
  • Deployment: GitHub Pages
  • Version Control: Git

πŸ“ Project Structure

weathernow/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ components/
β”‚   β”‚   β”œβ”€β”€ Header.jsx          # Application header
β”‚   β”‚   β”œβ”€β”€ SearchBar.jsx       # Weather search functionality
β”‚   β”‚   β”œβ”€β”€ WeatherCard.jsx     # Main weather display
β”‚   β”‚   β”œβ”€β”€ WeatherDetails.jsx  # Detailed weather info
β”‚   β”‚   β”œβ”€β”€ WeatherIcon.jsx     # Dynamic weather icons
β”‚   β”‚   └── ErrorMessage.jsx    # Error handling component
β”‚   β”œβ”€β”€ assets/                 # Static resources
β”‚   β”œβ”€β”€ App.jsx                 # Main application component
β”‚   β”œβ”€β”€ constants.js            # Configuration constants
β”‚   └── index.css              # Global styles
β”œβ”€β”€ public/                     # Public assets
β”œβ”€β”€ .github/                    # GitHub Actions workflows
└── configuration files         # Various config files

⚑ Quick Start

  1. Clone the repository
git clone https://github.com/Jenidevops/weathernow-forcasts-app.git
cd weathernow-forcasts-app
  1. Install dependencies
npm install
  1. Start development server
npm run dev

Visit http://localhost:5173 to see the application in action.

πŸš€ Production Deployment

npm run build
npm run deploy

πŸ”§ Technical Implementation

Architecture Highlights

  • Component-Based Structure: Modular and reusable components
  • Responsive Design: Mobile-first approach using Tailwind CSS
  • Performance Optimization:
    • Lazy loading of components
    • Optimized asset delivery
    • Efficient state management

Key Features Implementation

  • Weather Data Fetching: Asynchronous API calls with proper error handling
  • Dynamic UI: Tailwind CSS for responsive design
  • Animation System: Custom keyframe animations
  • State Management: React Context for global state

πŸ§ͺ Testing and Quality

  • Error Boundaries: Graceful error handling
  • Input Validation: Robust form validation
  • Responsive Testing: Cross-device compatibility
  • Performance Metrics: Optimized loading times

πŸ“ˆ Future Enhancements

  • 5-day weather forecast
  • Location-based automatic weather
  • Weather alerts and notifications
  • Dark/Light theme toggle
  • Multiple location saving

πŸ‘₯ Contributing

We welcome contributions! Please see our Contributing Guide for details.

  1. Fork the repository
  2. Create your feature branch:
git checkout -b feature/amazing-feature
  1. Commit your changes:
git commit -m 'Add amazing feature'
  1. Push to the branch:
git push origin feature/amazing-feature
  1. Open a Pull Request

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgments

  • OpenWeatherMap API for weather data
  • React community for excellent documentation
  • TailwindCSS team for the amazing framework

πŸ“ž Contact

Jenifer - @LinkedIn

Project Link: https://github.com/Jenidevops/weathernow-forcasts-app


⭐ If you find this project useful, please consider giving it a star!

About

Modern, responsive weather application built with React + Vite and Tailwind CSS. Features real-time weather data from OpenWeatherMap API, dynamic backgrounds based on conditions, and beautiful UI with smooth animations. Displays temperature, humidity, wind speed, visibility & more. Fully mobile-responsive! 🌀️

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published