๐ View Project Presentation
Real-time weather data powered by Zomato Weather Union API ๐
Live Demo โข Features โข Installation โข API
- Overview
- Features
- Tech Stack
- Installation
- Usage
- API Reference
- Deployment
- Screenshots
- Contributing
- License
Zomato Weather App is a modern, responsive web application that provides real-time weather information across 577+ cities in India. Built with vanilla JavaScript and powered by Zomato's Weather Union API, it delivers accurate hyperlocal weather data from IoT sensors and rain gauge systems.
- ๐ฏ Hyperlocal Accuracy: Get precise weather data from ground-level sensors
- ๐ก Real-time Updates: Live data from AWS and rain gauge systems
- ๐บ๏ธ Wide Coverage: Access weather info from 577+ Indian localities
- ๐ฑ Mobile Friendly: Fully responsive design works on all devices
- โก Fast & Lightweight: No heavy frameworks, just pure performance
- ๐ก๏ธ Real-time Temperature - Live temperature readings in Celsius
- ๐ง Humidity Monitoring - Track moisture levels in the air
- ๐จ Wind Data - Get wind speed and direction information
- ๐ง๏ธ Rain Metrics - Monitor rain intensity and accumulation
- ๐ญ Air Quality Index - Check PM 2.5 and PM 10 levels
- ๐ Dual Search Modes:
- Coordinates (Latitude/Longitude)
- Locality Code (e.g., ZWL001156)
- ๐จ Beautiful Animations - Smooth, modern interface with animated elements
- ๐ Live Clock - Real-time clock display
- ๐ Smart Search - Browse and search through 577+ locations
- ๐ Data Visualization - Clean, organized weather information display
- ๐ Responsive Design - Works seamlessly on desktop, tablet, and mobile
- HTML5 - Semantic markup
- CSS3 - Modern styling with animations
- Vanilla JavaScript - Pure JS, no frameworks needed
- Google Fonts - Poppins font family
- Node.js - Runtime environment
- HTTP/HTTPS modules - Native Node.js modules for server and API calls
- File System (fs) - Serve static files
- Zomato Weather Union API - Real-time weather data provider
- Render - Cloud platform for deployment
- Git/GitHub - Version control
- Node.js (v14.0.0 or higher)
- npm (comes with Node.js)
- Git
- Clone the repository
git clone https://github.com/viveksharma2105/Zomato-weather.git
cd Zomato-weather- Install dependencies (if any are added in the future)
npm install- Set up environment variables
# Create a .env file (optional, API key has fallback)
echo "API_KEY=your_zomato_api_key_here" > .env
echo "PORT=3000" >> .env- Start the server
npm start- Open in browser
http://localhost:3000
- Select ๐ Coordinates (Lat/Long) option
- Enter latitude (e.g.,
12.933756) - Enter longitude (e.g.,
77.625825) - Click ๐ Get Weather
- Select ๐๏ธ Locality Code option
- Enter locality code (e.g.,
ZWL001156) - Click ๐ Get Weather
- Click ๐บ๏ธ Browse All Locations button
- Search for your city or locality
- Click on any location to fetch weather data automatically
http://localhost:3000
GET /weather/coordinates?latitude={lat}&longitude={lon}Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
latitude |
float | Yes | Latitude coordinate |
longitude |
float | Yes | Longitude coordinate |
Example:
curl "http://localhost:3000/weather/coordinates?latitude=12.933756&longitude=77.625825"Response:
{
"status": "success",
"message": "Locality weather data",
"device_type": 1,
"locality_weather_data": {
"temperature": 28.5,
"humidity": 65,
"wind_speed": 3.2,
"wind_direction": 180,
"rain_intensity": 0,
"rain_accumulation": 0
}
}GET /weather/locality?locality_id={id}Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
locality_id |
string | Yes | Locality code (e.g., ZWL001156) |
Example:
curl "http://localhost:3000/weather/locality?locality_id=ZWL001156"- Push your code to GitHub
git add .
git commit -m "Initial commit"
git push origin main-
Create a new Web Service on Render
- Go to Render Dashboard
- Click "New +" โ "Web Service"
- Connect your GitHub repository
-
Configure the service
- Name:
zomato-weather-app - Build Command: Leave empty (or
npm installif you add dependencies) - Start Command:
npm start - Environment Variables:
API_KEY=your_zomato_api_key
- Name:
-
Deploy!
- Click "Create Web Service"
- Wait for deployment to complete
- Visit your live URL:
https://your-app.onrender.com
| Variable | Description | Required |
|---|---|---|
PORT |
Server port (auto-assigned by Render) | No |
API_KEY |
Zomato Weather Union API Key | Recommended |
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ๐ฆ๏ธ Weather Union Current Time: 14:30:45 โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ โ
โ ๐ Real-Time Weather Data โ
โ Get accurate weather information powered by โ
โ Zomato Weather Union API โ
โ โ
โ โ ๐ Coordinates (Lat/Long) โ
โ โ ๐๏ธ Locality Code โ
โ โ
โ ๐บ๏ธ [Browse All Locations (577+ Cities)] โ
โ โ
โ [Latitude Input] [Longitude Input] โ
โ [๐ Get Weather] โ
โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ ๐ค๏ธ Weather Information โ โ
โ โ ๐ก๏ธ Temperature: 28.5ยฐC โ โ
โ โ ๐ง Humidity: 65% โ โ
โ โ ๐จ Wind Speed: 3.2 m/s โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Contributions are welcome! Here's how you can help:
- Fork the repository
- Create a feature branch
git checkout -b feature/AmazingFeature- Commit your changes
git commit -m "Add some AmazingFeature"- Push to the branch
git push origin feature/AmazingFeature- Open a Pull Request
- ๐ Add weather forecast (hourly/daily)
- ๐ Add charts and graphs for weather trends
- ๐บ๏ธ Integrate interactive maps
- ๐ Add dark mode toggle
- ๐ Add weather alerts and notifications
- ๐ Add internationalization (i18n)
- ๐ฑ Create a mobile app version
This project is licensed under the ISC License.
Vivek Sharma
- GitHub: @viveksharma2105
- Zomato Weather Union - For providing the weather API
- Google Fonts - For the Poppins font family
- Render - For hosting services
- Open Source Community - For inspiration and support
If you have any questions or need help, feel free to:
- Open an Issue
- Contact: [Your Email]
Give a โญ๏ธ if this project helped you!
Made with โค๏ธ and โ by Vivek Sharma