Designed with production-grade patterns: debouncing, secure API access, and CI/CD automation.
A clean, responsive weather application built using HTML, CSS, and JavaScript, with a serverless backend powered by Netlify Functions.
The app fetches real-time weather data from the OpenWeather API and emphasizes smooth UX through loading states, debounced search, and subtle error animations.
π https://forecast-lite.netlify.app/
weather-app/ β βββ frontend/ β βββ index.html β βββ style.css β βββ script.js β βββ netlify/ β βββ functions/ β βββ weather.js β βββ README.md βββ netlify.toml
Frontend
- HTML5
- CSS3 (Responsive layout)
- Vanilla JavaScript
Backend
- Netlify Serverless Functions
- OpenWeather API
Deployment & CI/CD
- Netlify
- GitHub
- User submits a city query from the frontend
- Request is routed to a Netlify Serverless Function
- Serverless function securely queries the OpenWeather API
- Validated weather data is returned to the client
- UI updates dynamically based on the response
- Invalid inputs trigger a non-blocking shake animation for feedback
Browser (Frontend) | | fetch() β Netlify Function (Backend) | | OpenWeather API β Weather Data Response
- π Search weather by city
- β³ Loading spinner during data fetch
- π§ Debounced search to reduce unnecessary API calls
- π¦ Serverless backend with secure API key handling
- π± Fully responsive design
- β Shake animation on invalid input (non-intrusive UX)
- β‘ Automatic deployment on Git push (CI/CD)
Developed by : Ritik R. Yadav E-mail : ritik.r.yadav0001@gmail.com Learning by building, breaking, and fixing β‘
β If you like this project, give it a star!