From 8f793a9e02a267496e6ece9c7438815c9147da87 Mon Sep 17 00:00:00 2001 From: Your Name~kunal-511 Date: Tue, 10 Oct 2023 18:23:05 +0530 Subject: [PATCH 1/2] adding Weather App --- weather app/Faridabad.js | 45 ++++ weather app/Hyderabad.js | 45 ++++ weather app/Jaipur.js | 45 ++++ weather app/London.js | 45 ++++ weather app/Untitled-1.txt | 39 +++ weather app/boston.js | 45 ++++ ...time-concept-vector-banner_87946-4137.avif | Bin 0 -> 37328 bytes weather app/shanghai.js | 45 ++++ weather app/weather.css | 43 ++++ weather app/weather.html | 227 ++++++++++++++++++ weather app/weather.js | 161 +++++++++++++ 11 files changed, 740 insertions(+) create mode 100644 weather app/Faridabad.js create mode 100644 weather app/Hyderabad.js create mode 100644 weather app/Jaipur.js create mode 100644 weather app/London.js create mode 100644 weather app/Untitled-1.txt create mode 100644 weather app/boston.js create mode 100644 weather app/day-with-clouds-weather-app-screen-mobile-interface-design-forecast-weather-background-time-concept-vector-banner_87946-4137.avif create mode 100644 weather app/shanghai.js create mode 100644 weather app/weather.css create mode 100644 weather app/weather.html create mode 100644 weather app/weather.js diff --git a/weather app/Faridabad.js b/weather app/Faridabad.js new file mode 100644 index 000000000..c4796e3d9 --- /dev/null +++ b/weather app/Faridabad.js @@ -0,0 +1,45 @@ +async function fetchData() { + const url = 'https://weather-by-api-ninjas.p.rapidapi.com/v1/weather?city=Faridabad'; + const options = { + method: 'GET', + headers: { + 'X-RapidAPI-Key': '9ae224ae17msh167ad0acab752d5p1d336fjsn4e3fa840bf04', + 'X-RapidAPI-Host': 'weather-by-api-ninjas.p.rapidapi.com' + } + }; + + try { + const response = await fetch(url, options); + const result = await response.json(); + console.log(result); + + // cloud_pct.innerHTML = result.cloud_pct; + tempFaridabad.innerHTML = result.temp; + feels_likeFaridabad.innerHTML = result.feels_like; + humidityFaridabad.innerHTML = result.humidity; + min_tempFaridabad.innerHTML = result.min_temp; + max_tempFaridabad.innerHTML = result.max_temp; + wind_speedFaridabad.innerHTML = result.wind_speed; + wind_degreesFaridabad.innerHTML = result.wind_degrees; + sunriseFaridabad.innerHTML = result.sunrise; + sunsetFaridabad.innerHTML = result.sunset; + + // Use the retrieved data as needed + // ... + + } catch (error) { + console.error(error); + } + } + + fetchData(); + + + + + + + + + + \ No newline at end of file diff --git a/weather app/Hyderabad.js b/weather app/Hyderabad.js new file mode 100644 index 000000000..cf343e59f --- /dev/null +++ b/weather app/Hyderabad.js @@ -0,0 +1,45 @@ +async function fetchData() { + const url = 'https://weather-by-api-ninjas.p.rapidapi.com/v1/weather?city=Hyderabad'; + const options = { + method: 'GET', + headers: { + 'X-RapidAPI-Key': '9ae224ae17msh167ad0acab752d5p1d336fjsn4e3fa840bf04', + 'X-RapidAPI-Host': 'weather-by-api-ninjas.p.rapidapi.com' + } + }; + + try { + const response = await fetch(url, options); + const result = await response.json(); + console.log(result); + + // cloud_pct.innerHTML = result.cloud_pct; + tempHyderabad.innerHTML = result.temp; + feels_likeHyderabad.innerHTML = result.feels_like; + humidityHyderabad.innerHTML = result.humidity; + min_tempHyderabad.innerHTML = result.min_temp; + max_tempHyderabad.innerHTML = result.max_temp; + wind_speedHyderabad.innerHTML = result.wind_speed; + wind_degreesHyderabad.innerHTML = result.wind_degrees; + sunriseHyderabad.innerHTML = result.sunrise; + sunsetHyderabad.innerHTML = result.sunset; + + // Use the retrieved data as needed + // ... + + } catch (error) { + console.error(error); + } + } + + fetchData(); + + + + + + + + + + \ No newline at end of file diff --git a/weather app/Jaipur.js b/weather app/Jaipur.js new file mode 100644 index 000000000..16b125567 --- /dev/null +++ b/weather app/Jaipur.js @@ -0,0 +1,45 @@ +async function fetchData() { + const url = 'https://weather-by-api-ninjas.p.rapidapi.com/v1/weather?city=Jaipur'; + const options = { + method: 'GET', + headers: { + 'X-RapidAPI-Key': '9ae224ae17msh167ad0acab752d5p1d336fjsn4e3fa840bf04', + 'X-RapidAPI-Host': 'weather-by-api-ninjas.p.rapidapi.com' + } + }; + + try { + const response = await fetch(url, options); + const result = await response.json(); + console.log(result); + + // cloud_pct.innerHTML = result.cloud_pct; + tempJaipur.innerHTML = result.temp; + feels_likeJaipur.innerHTML = result.feels_like; + humidityJaipur.innerHTML = result.humidity; + min_tempJaipur.innerHTML = result.min_temp; + max_tempJaipur.innerHTML = result.max_temp; + wind_speedJaipur.innerHTML = result.wind_speed; + wind_degreesJaipur.innerHTML = result.wind_degrees; + sunriseJaipur.innerHTML = result.sunrise; + sunsetJaipur.innerHTML = result.sunset; + + // Use the retrieved data as needed + // ... + + } catch (error) { + console.error(error); + } + } + + fetchData(); + + + + + + + + + + \ No newline at end of file diff --git a/weather app/London.js b/weather app/London.js new file mode 100644 index 000000000..bb6a05a49 --- /dev/null +++ b/weather app/London.js @@ -0,0 +1,45 @@ +async function fetchData() { + const url = 'https://weather-by-api-ninjas.p.rapidapi.com/v1/weather?city=London'; + const options = { + method: 'GET', + headers: { + 'X-RapidAPI-Key': '9ae224ae17msh167ad0acab752d5p1d336fjsn4e3fa840bf04', + 'X-RapidAPI-Host': 'weather-by-api-ninjas.p.rapidapi.com' + } + }; + + try { + const response = await fetch(url, options); + const result = await response.json(); + console.log(result); + + // cloud_pct.innerHTML = result.cloud_pct; + tempLondon.innerHTML = result.temp; + feels_likeLondon.innerHTML = result.feels_like; + humidityLondon.innerHTML = result.humidity; + min_tempLondon.innerHTML = result.min_temp; + max_tempLondon.innerHTML = result.max_temp; + wind_speedLondon.innerHTML = result.wind_speed; + wind_degreesLondon.innerHTML = result.wind_degrees; + sunriseLondon.innerHTML = result.sunrise; + sunsetLondon.innerHTML = result.sunset; + + // Use the retrieved data as needed + // ... + + } catch (error) { + console.error(error); + } + } + + fetchData(); + + + + + + + + + + \ No newline at end of file diff --git a/weather app/Untitled-1.txt b/weather app/Untitled-1.txt new file mode 100644 index 000000000..a63ce5760 --- /dev/null +++ b/weather app/Untitled-1.txt @@ -0,0 +1,39 @@ +{"Cloud_pct": 100, +"Temp": 13, + "Feels_like": 12, + "Humidity": 77, + "Min_temp": 11, + "Wax_temp": 15, + "Wind_speed": 4.63, + "Wind_degrees": 250, + "Sunrise": 1684758254, + "Sunset": 1684813682} + + + + cloud_pct = response.cloud_pct +temp = response.temp + feels_like = response.feels_like + humidity = response.humidity + min_temp = response.min_temp + max_temp = response.max_temp + wind_speed = response.wind_speed + wind_degrees = response.wind_degrees + sunrise = response.sunrise + sunset = response.sunset + + + + + { + "cloud_pct": 0, + "temp": 19, + "feels_like": 19, + "humidity": 69, + "min_temp": 17, + "max_temp": 19, + "wind_speed": 2, + "wind_degrees": 150, + "sunrise": 1684875241, + "sunset": 1684925291 +} \ No newline at end of file diff --git a/weather app/boston.js b/weather app/boston.js new file mode 100644 index 000000000..a8bdb470b --- /dev/null +++ b/weather app/boston.js @@ -0,0 +1,45 @@ +async function fetchData() { + const url = 'https://weather-by-api-ninjas.p.rapidapi.com/v1/weather?city=Boston'; + const options = { + method: 'GET', + headers: { + 'X-RapidAPI-Key': '9ae224ae17msh167ad0acab752d5p1d336fjsn4e3fa840bf04', + 'X-RapidAPI-Host': 'weather-by-api-ninjas.p.rapidapi.com' + } + }; + + try { + const response = await fetch(url, options); + const result = await response.json(); + console.log(result); + + // cloud_pct.innerHTML = result.cloud_pct; + tempBoston.innerHTML = result.temp; + feels_likeBoston.innerHTML = result.feels_like; + humidityBoston.innerHTML = result.humidity; + min_tempBoston.innerHTML = result.min_temp; + max_tempBoston.innerHTML = result.max_temp; + wind_speedBoston.innerHTML = result.wind_speed; + wind_degreesBoston.innerHTML = result.wind_degrees; + sunriseBoston.innerHTML = result.sunrise; + sunsetBoston.innerHTML = result.sunset; + + // Use the retrieved data as needed + // ... + + } catch (error) { + console.error(error); + } + } + + fetchData(); + + + + + + + + + + \ No newline at end of file diff --git a/weather app/day-with-clouds-weather-app-screen-mobile-interface-design-forecast-weather-background-time-concept-vector-banner_87946-4137.avif b/weather app/day-with-clouds-weather-app-screen-mobile-interface-design-forecast-weather-background-time-concept-vector-banner_87946-4137.avif new file mode 100644 index 0000000000000000000000000000000000000000..fa3b8ae00425366666ab8ff6f1c0411321382fb4 GIT binary patch literal 37328 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 + + + + + My Weather App + + + + + + +
+

Weather For

+
+
+
+
+
+

Temperature

+
+
+ +
    +
  • Temperature is °C
  • +
  • Min Temperature is °C
  • +
  • Max Temperature is °C
  • + +
+ +
+
+
+
+
+
+

Humidity Info

+
+
+ +
    +
  • Cloud PCT is +
  • Feels like is +
  • Humidity is +
+ +
+
+
+
+
+
+

Wind Info

+
+
+ +
    +
  • Wind speed is
  • +
  • Sunrise Time is
  • +
  • Sunset Time is
  • +
+ +
+
+
+
+ +

Weather of other common Places

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TempFeels_likeHumidity Min_temp Max_temp Wind_speed Wind_degrees Sunrise Sunset
Shanghai
Boston
Faridabad
Jaipur
London
Hyderabad
+
+
+
+ + + + + + + + + + + + \ No newline at end of file diff --git a/weather app/weather.js b/weather app/weather.js new file mode 100644 index 000000000..2e118c289 --- /dev/null +++ b/weather app/weather.js @@ -0,0 +1,161 @@ +// async function fetchData() { +// const url = 'https://weather-by-api-ninjas.p.rapidapi.com/v1/weather?city=Seattle'; +// const options = { +// method: 'GET', +// headers: { +// 'X-RapidAPI-Key': '9ae224ae17msh167ad0acab752d5p1d336fjsn4e3fa840bf04', +// 'X-RapidAPI-Host': 'weather-by-api-ninjas.p.rapidapi.com' +// } +// }; + +// try { +// const response = await fetch(url, options); +// const result = await response.text(); +// console.log(result); +// } catch (error) { +// console.error(error); +// } +// } + +// fetchData(); + + + + +// async function fetchData() { +// const url = 'https://weather-by-api-ninjas.p.rapidapi.com/v1/weather?city=Seattle'; +// const options = { +// method: 'GET', +// headers: { +// 'X-RapidAPI-Key': '9ae224ae17msh167ad0acab752d5p1d336fjsn4e3fa840bf04', +// 'X-RapidAPI-Host': 'weather-by-api-ninjas.p.rapidapi.com' +// } +// }; + +// try { +// const response = await fetch(url, options); +// const result = await response.text({ +// console.log(result) + + +// cloud_pct = response.cloud_pct, +// temp = response.temp, +// feels_like = response.feels_like, +// humidity = response.humidity, +// min_temp = response.min_temp, +// max_temp = response.max_temp, +// wind_speed = response.wind_speed +// wind_degrees = response.wind_degrees, +// sunrise = response.sunrise, +// sunset = response.sunset, +// }) + +// } catch (error) { +// console.error(error); +// } +// } + +// fetchData(); + + +// RUNNING PROPERLY + +// async function fetchData() { +// const url = 'https://weather-by-api-ninjas.p.rapidapi.com/v1/weather?city=Shanghai'; +// const options = { +// method: 'GET', +// headers: { +// 'X-RapidAPI-Key': '9ae224ae17msh167ad0acab752d5p1d336fjsn4e3fa840bf04', +// 'X-RapidAPI-Host': 'weather-by-api-ninjas.p.rapidapi.com' +// } +// }; + +// try { +// const response = await fetch(url, options); +// const result = await response.json(); +// console.log(result); + +// cloud_pct.innerHTML = result.cloud_pct; +// temp.innerHTML = result.temp; +// feels_like.innerHTML = result.feels_like; +// humidity.innerHTML = result.humidity; +// min_temp.innerHTML = result.min_temp; +// max_temp.innerHTML = result.max_temp; +// wind_speed.innerHTML = result.wind_speed; +// wind_degrees.innerHTML = result.wind_degrees; +// sunrise.innerHTML = result.sunrise; +// sunset.innerHTML = result.sunset; + +// // Use the retrieved data as needed +// // ... + +// } catch (error) { +// console.error(error); +// } +// } + +// fetchData(); + + + + + + +const options = { + method: 'GET', + headers: { + 'X-RapidAPI-Key': '9ae224ae17msh167ad0acab752d5p1d336fjsn4e3fa840bf04', + 'X-RapidAPI-Host': 'weather-by-api-ninjas.p.rapidapi.com' + } + }; + + const getWeather = (city) => { + cityName.innerHTML = city + fetch(`https://weather-by-api-ninjas.p.rapidapi.com/v1/weather?city=${city}`, options) + // fetch('https://weather-by-api-ninjas.p.rapidapi.com/v1/weather?city= '+ city, options) + .then(response => { + if (!response.ok) { + throw new Error('Network response was not ok'); + } + return response.json(); + }) + .then(response => { + console.log(response); + + // Update the HTML elements with weather data + cloud_pct.innerHTML = response.cloud_pct; + temp.innerHTML = response.temp; + feels_like.innerHTML = response.feels_like; + humidity.innerHTML = response.humidity; + min_temp.innerHTML = response.min_temp; + max_temp.innerHTML = response.max_temp; + wind_speed.innerHTML = response.wind_speed; + wind_degrees.innerHTML = response.wind_degrees; + sunrise.innerHTML = response.sunrise; + sunset.innerHTML = response.sunset; + }) + .catch(err => console.error(err)); + }; +submit.addEventListener("click", (e)=>{ + e.preventDefault() + getWeather(city.value) +}) + +getWeather("Delhi") + + + + + + + + + + + + + + + + + \ No newline at end of file From 4bf990eb487115d0f3ec47f38344d48dd3cfc489 Mon Sep 17 00:00:00 2001 From: Your Name~kunal-511 Date: Thu, 12 Oct 2023 11:33:53 +0530 Subject: [PATCH 2/2] Folder name Updated --- {weather app => WeatherApp/kunal-511}/Faridabad.js | 0 {weather app => WeatherApp/kunal-511}/Hyderabad.js | 0 {weather app => WeatherApp/kunal-511}/Jaipur.js | 0 {weather app => WeatherApp/kunal-511}/London.js | 0 .../kunal-511}/Untitled-1.txt | 0 {weather app => WeatherApp/kunal-511}/boston.js | 0 ...round-time-concept-vector-banner_87946-4137.avif | Bin {weather app => WeatherApp/kunal-511}/shanghai.js | 0 {weather app => WeatherApp/kunal-511}/weather.css | 0 {weather app => WeatherApp/kunal-511}/weather.html | 0 {weather app => WeatherApp/kunal-511}/weather.js | 0 11 files changed, 0 insertions(+), 0 deletions(-) rename {weather app => WeatherApp/kunal-511}/Faridabad.js (100%) rename {weather app => WeatherApp/kunal-511}/Hyderabad.js (100%) rename {weather app => WeatherApp/kunal-511}/Jaipur.js (100%) rename {weather app => WeatherApp/kunal-511}/London.js (100%) rename {weather app => WeatherApp/kunal-511}/Untitled-1.txt (100%) rename {weather app => WeatherApp/kunal-511}/boston.js (100%) rename {weather app => WeatherApp/kunal-511}/day-with-clouds-weather-app-screen-mobile-interface-design-forecast-weather-background-time-concept-vector-banner_87946-4137.avif (100%) rename {weather app => WeatherApp/kunal-511}/shanghai.js (100%) rename {weather app => WeatherApp/kunal-511}/weather.css (100%) rename {weather app => WeatherApp/kunal-511}/weather.html (100%) rename {weather app => WeatherApp/kunal-511}/weather.js (100%) diff --git a/weather app/Faridabad.js b/WeatherApp/kunal-511/Faridabad.js similarity index 100% rename from weather app/Faridabad.js rename to WeatherApp/kunal-511/Faridabad.js diff --git a/weather app/Hyderabad.js b/WeatherApp/kunal-511/Hyderabad.js similarity index 100% rename from weather app/Hyderabad.js rename to WeatherApp/kunal-511/Hyderabad.js diff --git a/weather app/Jaipur.js b/WeatherApp/kunal-511/Jaipur.js similarity index 100% rename from weather app/Jaipur.js rename to WeatherApp/kunal-511/Jaipur.js diff --git a/weather app/London.js b/WeatherApp/kunal-511/London.js similarity index 100% rename from weather app/London.js rename to WeatherApp/kunal-511/London.js diff --git a/weather app/Untitled-1.txt b/WeatherApp/kunal-511/Untitled-1.txt similarity index 100% rename from weather app/Untitled-1.txt rename to WeatherApp/kunal-511/Untitled-1.txt diff --git a/weather app/boston.js b/WeatherApp/kunal-511/boston.js similarity index 100% rename from weather app/boston.js rename to WeatherApp/kunal-511/boston.js diff --git a/weather app/day-with-clouds-weather-app-screen-mobile-interface-design-forecast-weather-background-time-concept-vector-banner_87946-4137.avif b/WeatherApp/kunal-511/day-with-clouds-weather-app-screen-mobile-interface-design-forecast-weather-background-time-concept-vector-banner_87946-4137.avif similarity index 100% rename from weather app/day-with-clouds-weather-app-screen-mobile-interface-design-forecast-weather-background-time-concept-vector-banner_87946-4137.avif rename to WeatherApp/kunal-511/day-with-clouds-weather-app-screen-mobile-interface-design-forecast-weather-background-time-concept-vector-banner_87946-4137.avif diff --git a/weather app/shanghai.js b/WeatherApp/kunal-511/shanghai.js similarity index 100% rename from weather app/shanghai.js rename to WeatherApp/kunal-511/shanghai.js diff --git a/weather app/weather.css b/WeatherApp/kunal-511/weather.css similarity index 100% rename from weather app/weather.css rename to WeatherApp/kunal-511/weather.css diff --git a/weather app/weather.html b/WeatherApp/kunal-511/weather.html similarity index 100% rename from weather app/weather.html rename to WeatherApp/kunal-511/weather.html diff --git a/weather app/weather.js b/WeatherApp/kunal-511/weather.js similarity index 100% rename from weather app/weather.js rename to WeatherApp/kunal-511/weather.js