/weather-webapp-nextjs

Primary LanguageTypeScriptCreative Commons Zero v1.0 UniversalCC0-1.0

🌀️ Weather - Your Ultimate Weather Companion

Weather is a comprehensive weather application that provides real-time updates, forecasts, and detailed weather metrics. It's built with modern web technologies to provide a seamless and engaging user experience.

πŸš€ Key Features

  • 🌍 Real-time weather updates and forecasts
  • 🌑️ Detailed weather metrics including temperature, humidity, and wind speed
  • πŸŒ† Air quality monitoring and UV index tracking
  • 🎨 Light/Dark theme support
  • 🌐 Multi-language support
  • πŸ“± Responsive design for various devices
  • β™Ώ Accessibility-focused interface
  • πŸ—ΊοΈ Interactive weather maps

πŸ› οΈ Built With

  • ⚑ Next.js - React framework for production
  • βš›οΈ React - JavaScript library for building user interfaces
  • πŸ“˜ TypeScript - Typed superset of JavaScript
  • 🎨 Tailwind CSS - Utility-first CSS framework
  • 🎭 Radix UI - Unstyled, accessible components for React
  • πŸ–ΌοΈ Lucide React - Beautiful & consistent icon pack
  • πŸ“Š Recharts - Composable charting library for React
  • πŸ—ΊοΈ React Leaflet - Maps integration
  • πŸŒ™ next-themes - Theme management
  • 🚨 React Error Boundary - Error handling

πŸ“ˆ Development Process

The development of Weatherly focused on creating a user-friendly interface with robust functionality:

  1. 🌍 Implemented core weather tracking features
  2. πŸ” Integrated OpenWeather API for accurate data
  3. 🎨 Developed responsive UI with theme support
  4. β™Ώ Implemented comprehensive accessibility features
  5. ⚑ Optimized performance across all devices Throughout the development process, I prioritized code quality, accessibility, and user experience.

πŸƒβ€β™‚οΈ Running the Project

To run Weatherly locally, follow these steps:

  1. πŸ“₯ Clone the repository to your local machine:
git clone https://github.com/ankit0183/weather-webapp-nextjs.git
cd weather-webapp-nextjs.git

2.πŸ“¦ Set up environment variables: Create a .env.local file in the root directory with the following format:

Example env:
NEXT_PUBLIC_OPENWEATHER_API_KEY= 595aeccbd9b52cf1733f5c84d6f2aa95
NEXT_PUBLIC_BASE_URL= http://localhost:3000

Note: You'll need to obtain an API key from OpenWeather to use the weather services.

3.πŸ“¦ Install dependencies:

npm install
# or
yarn

4.πŸš€ Run the development server:

npm run dev
# or
yarn dev

5.🌐 Open http://localhost:3000 in your browser

πŸ“ Note

This project uses the OpenWeather API for weather data. Ensure you comply with OpenWeather's terms of service when using their API.

Screenshots

  • Screenshot 1
  • Screenshot 2
  • Screenshot 3

Created with ❀️ by Ankit kanojiya 🌀️ Weather data provided by Google API OpenWeather API