Build A React JS Weather App - OpenWeatherMap API - Tutorial
Build a React JS weather app using the OpenWeatherMap API. We will be using axios to connect with our API. There are probably a million ways to build a weather app and this is on a more basic level, but a great way to learn a few core fundamentals in React. Let me know what you think in the comments below.
ZeroTo Mastery:
- Master React JS Course - bit.ly/Learn-React-JS
- Complete Web Developer in 2023 - bit.ly/Complete-Web-Developer...
Learn to code here!
bit.ly/Code-Challenges
OpenWeatherMap API:
openweathermap.org/api
Github Repo:
github.com/fireclint/weather-...
☕ Buy me a Coffee ☕
www.buymeacoffee.com/clintbriley
Instagram 💪
/ fireclint
🔥 My Coding Equipment 🔥
Logitech MX Wireless Keyboard - amzn.to/3xKPFiN
Logitech MX Master 2S Wireless Mouse - amzn.to/3O5WmRD
SAMSUNG 49-Inch Gaming Monitor - amzn.to/3mvUy8M
Shure MV7 USB Podcast Microphone - amzn.to/3O00nqG
Mic Boom Arm - amzn.to/3NHn6YU
Monitor Desk Light Bar - amzn.to/3xzKlyj
Пікірлер: 245
This is my first React project and you made it so simple, interesting and attractive.
Thanks for such a great video, one of the few videos where I was able to follow along the whole way without much hassle and refactoring the tutorial in a modern way just so it works.
@codecommerce
2 жыл бұрын
That’s awesome man thank you! Code does become rather dated pretty quickly!
Great tutorial. I've just found your channel, and helped already me a lot! Subscribed! Hope you upload more tutorials/short projects like this!
@codecommerce
2 жыл бұрын
Thanks for the sub! So awesome!
Thank you for the tutorial! Really learned a lot!
thank you so much.this is really cool and easy to understand. wish you best of luck for more this type of quick learning videos
this tutorial exceeded my expectations and made things so much easier for me thank you so much! :) i will be following and using your tutorials going forward!
@codecommerce
2 жыл бұрын
Thank you Mels! That’s awesome!
Hi thanks for such a tutorial. First time using axios and find it very easy. Hope you will show such a small but important tutorial.
Thank you so much man!!!!! It was really helpful
im just learning react but i enjoy your teaching style, thanks brother!
Thanks, dude! Keep it up!
Fantastic, thank you!
Really educational for beginners!!
Great tutorial, I learned a lot. I subscribed and I'm excited for more. Thanks! :)
@codecommerce
2 жыл бұрын
Thank you dude!
thanks for the video
I came here because I was struggling with the undefined reading of temp part. Great solution, very straightforward. Well done!
@codecommerce
Жыл бұрын
Thank you!
Appreciate the video. Has made so many things very clear for me. Well done sir, looking forward to future videos.
@codecommerce
2 жыл бұрын
You’re awesome Julian, thank you!
Yeaaayy! Such a joy making the first reactive api webpage!! 🥳 Thank you very much!
@codecommerce
2 жыл бұрын
Awesome dude!
Really great and simple guide,subscribed!
@codecommerce
2 жыл бұрын
Awesome, thank you!
This is just brilliant , perfect tutorial exist , i made my first project for resume hurray
a good extension of that would be changing the background depending on the weather condition
perfeeect , i was struggling to implement open weather, but you made it so simple, thanks a lot!!!!!
@codecommerce
2 жыл бұрын
Thank you Paloma!
@shanu3682
2 жыл бұрын
Hey.. I completed react js some times ago and looking for some beginners project. Can u help me with that..
Have to say thanks for these videos, was struggling with react for so long but watching these vids has helped me so much. Great content.
@codecommerce
2 жыл бұрын
Glad to hear it!
Mate, this was brilliant. Thanks for the tutorial.
@codecommerce
Жыл бұрын
Thanks Matt!
Great content! I learned many useful things. thanks a lot !!
@codecommerce
2 жыл бұрын
Glad it was helpful!
its simple but very useful, thanks man!
@codecommerce
Жыл бұрын
Thanks man!
Thanks for such a great video! i love this
@codecommerce
2 жыл бұрын
Thank you very much
Great tutorial and also a good explanation of each step
@codecommerce
2 жыл бұрын
Glad you liked it!
I was actually building a similar app by myself and this error 28:07 had me stuck the whole day. Thankfully found this video.
Soy de colombia muchas gracias por tus videos por tu enseñanza mil gracias
Amazing ❤
Thanks for a great tutorial!
@codecommerce
2 жыл бұрын
Thank you Malin!
Great tutorial, thank you.
@codecommerce
Жыл бұрын
Thank you Tarek!
i'm learning react and i have to say it was a great video for beginners thanks for sharing it
@codecommerce
2 жыл бұрын
Glad it was helpful!
Thank you 👍👍
Hey clint awesome work, followed along and completed it. Made some changes as onkeypress and event is deprecated , and played with css styling too. Had an idea about axios but didn't implement it, it was fun playing around with code. Thanks a lot:)
@jessiefianu6881
5 ай бұрын
Hello there, please can you tell me how you went about the onKeyPress. It's deprecated in mine too so I'm stuck with the code. Secondly my background image only covers 3/4 of the browser, is there anyway I can fix this? Thank you very much and I am looking forward to hearing from you.
@archanarai2423
5 ай бұрын
@@jessiefianu6881 hi, since onkeypress was deprecated I used onKeyDown and it worked fine for me. And for covering your whole background image maybe use object-fit property
Thanks so much! This was great. Quick question, when it comes to pushing to GitHub, how do we hide the API key?
Great video again just completed it here is the code snippet to check if no city is found axios.get(url).then((response) => { setData(response.data); }).catch((error) => { alert(error.response.data.message) })
Thanks !
thank you so much for this video it was amazing project
@codecommerce
2 жыл бұрын
Thank you Mohamed - cheers dude!
sir you have no clue how much i struggled to find a way to run a function on a key press, , this video helped alot , thankyou so much
@codecommerce
2 жыл бұрын
Thanks man- I know that’s frustrating! Haha
good job my frends bravo
keep it up best tutorial ever it works with me thanksssssssss
@codecommerce
2 жыл бұрын
You’re the man! 💪
thanks for your video, i really help me! greetings from Argentina.
@codecommerce
2 жыл бұрын
Glad it helped! Thank you so much dude!
Very good tutorial! Really helpfull! 👍 Maybe can we wish for a tutorial about a travel map app. something like that? That would be great. Thank you! 🙏
@codecommerce
2 жыл бұрын
Great suggestion! That would really be cool - add in google map API!
Thank you so much for this tutorial! It was really fun and I learned a lot, including a previously unknown (to me) JavaScript method: toFixed()
@codecommerce
2 жыл бұрын
That's awesome man - Glad it helped!
hi, i made a seperate component for the search and for the actual information, how would i get the weather info from the search component to the information component so it can be displayed?
I started Learning React Last month and it felt different from Vanilla Javascript but you made it simple, after seeing this video, i play around with Rapid API, i am forever subscribed to this channel and if you decide to leave youtube, i will follow you to anywhere so i can learn whatever you know, lol. YOU MAKE IT VERY VERY VERY VERY SIMPLE. Thank you so much Sir
@codecommerce
2 жыл бұрын
Thank you so much man! React makes things so incredibly easy!
@nanatieku5805
Жыл бұрын
How's the journey being so far Obinna? I started learning React a few weeks now. It's going quite well so far
@obinnailoanya8730
Жыл бұрын
@@nanatieku5805 I’m a pro now, I use it as the front end to the full stack applications I build, I use typescript too
thank you
Great video
This is one of the best tutorial for using basic API
@codecommerce
2 жыл бұрын
Thanks Vinay!
Thank you This video is helpful
@codecommerce
2 жыл бұрын
Thank you sir!
Hell yeah man thanks explained everything perfectly i am going to try making a train schedule app now
@codecommerce
2 жыл бұрын
Glad I could help - that sounds like an awesome project dude!
@Hoesayyyyyyy
2 жыл бұрын
@@codecommerce thank you my brother you helped me out a lot
Great video!
@codecommerce
Жыл бұрын
Thank you Tiago!
Good job👏🇧🇷
A new subscriber from Pakistan , Thanks really simple and straight forward 🥰
@codecommerce
11 ай бұрын
Thank you man!
Thank you for this walkthrough. On 7:48, did you add an emmet extension? figuring out right now how to get that Emmet Abbreviation suggestion to keep saving time. Current emmet extensions I have do not throw me options like yours
@DeyDreamMusic
8 ай бұрын
I'm wondering the same thing, way faster workflow
hello men great video but the current API don't have the location parameter, only the latitude, and longitude
I didnt understand what you did with the json file of the API result on 6:42. can i get an explaination of what was that and how to do it ? please :)
how could you alter this project so that you have a "gallery" of the different weather data for differnet locations?
great tutorial, thank you
@varunupadhyay2488
Жыл бұрын
does this api still working? should i follow this video?
@bhargav8263
Жыл бұрын
@@varunupadhyay2488 yes working,api works after half an hour
what happens if the user enters something that isn't a city? its not really finished.
thanks
esta tan bien explicado que aun sin dominar el ingles se entiende perfecto, excelente tutorial
@codecommerce
2 жыл бұрын
Gracias 🙏
very good job you can also add .catch in search location , in case someone type a location that not exist , like dradubau const searchLocation = (event) => { if (event.key === 'Enter') { axios.get(url).then((response) => { setData(response.data) }).catch((error) => { console.error('Error fetching weather data:', error); setLocation(''); }); } }
@codecommerce
Жыл бұрын
Thank you sir!
at 26:46 I keep just getting axios 404 errors. On the open weather site I had to scroll way down to find the API call example in this video. Says its no longer being supported, and the newer version uses Latitude and Longitude. Anyone know how to fix? API stuff is where im the weakest rn and I have a React interview in 2 days :/
Excellent🤩
@codecommerce
Жыл бұрын
Thank you!
an amazing video , thanks for this ,will be locked into your channel
@anask550
Жыл бұрын
can you please help me at 11:11 , the star wont work, what else can i use instead of it?
@codecommerce
Жыл бұрын
Thank you!
good work bro keep it up
@codecommerce
2 жыл бұрын
Thank you, I will
Awesome work Clint. Is there a way to have it automatically display from your browsers location vs. searching for a location. I haven't watched your whole video yet so not sure if you covered it or not
@codecommerce
2 жыл бұрын
Thank you sir! I didn’t even think about that, but I’m sure you can!
Im not sure what im doing wrong but the ${location} in the URL string doesnt update from the input.. my axios is getting error
Use an extension to right import react from 'react'';.... This extension named: ES7+ React/Redux/React-Native snippets Then right rafce in each react functional component, for class based component rcc
Love the tutorial! First city entered is my city! Haha
@codecommerce
2 жыл бұрын
Haha bonus!
So nice 👏
@codecommerce
2 жыл бұрын
Thank you sir!
Great content it would be great if we see some easy more stuff with some bootstrap or material css
@codecommerce
2 жыл бұрын
I should familiarize myself a little better with CSS libraries. I'm not a huge fan of bootstrap however I think material and tailwind is a little more appealing!
What if you entered the city that does not exists , you should add condition to display "City Not Found" for that matter. Otherwise its 10/10 app Great!!!
@codecommerce
2 ай бұрын
That would be a nice addition
what can i use instead of the star at 11:11 ?
Thanks papi
Built my first react application thank you so much :)
@codecommerce
Жыл бұрын
Awesome dude!
@varunupadhyay2488
Жыл бұрын
does this api still working? should i follow this video?
@chandrakethans5835
Жыл бұрын
@@varunupadhyay2488 yeah the api working it’ll take sometime to become active after that it’ll work just fine
@dharapandya2045
4 ай бұрын
Is it still working or not? Pls reply @@varunupadhyay2488
This tutorial really helps me to practice React with API~ At the end of the course, I found that while refreshing the website , the unit of temperature would still exist .I’d say that because it was written in ".top" not in ".bottom" . Was it right? Then i am trying to change the backgroung URl via using Pexel API . Hope it works.~~~
@codecommerce
Жыл бұрын
How are you making the API call?
@hcw1566
Жыл бұрын
@@codecommerce Pexel API can be used by searching pictures whatever keywords you want , with the location in weather website , it can search the weather and the pic at the same time ,and if i can't seacrh the city that i would use the default pic to display . But i did come up with a problem that i still can't figure it out , screen would flickered with the default pic while refreshing or searching new location . Sorry about that my English isn't really good.
20.01 for stating state main part
Mby use bootstrap next time it would save a lot of time with the styling
Hi! Thanks for your video! It is excellent!! Could you set up the wrapping text for your code? That way we will be able to see your code lines at any time! God Bless you! :)
@codecommerce
2 жыл бұрын
Thank you - I'll try and keep that in mind.
@devenderkumar-pr6ig
2 жыл бұрын
I having a issue i am not able to see bottom details(humidity,wind speed etc)/below the page its showing white space only
Hey Clint hope all is well brother/ So I have a question for you, is there a way to make the hamburger sub menu auto close. As it stand now if you open the menu and increase the size of the screen the menu stays open and then you have to reshrink it to get the "x" back to close the menu out. Any suggestions?
@codecommerce
2 жыл бұрын
I didn't even realize that - sorry man! We should be able to add "hidden" in a media query.
Hi, thanks for this. Really helpful. I'm just wondering why you're keeping your API Key just hanging there out in the open? Any reason for that?
@codecommerce
2 жыл бұрын
Hi Emilia! No- I should’ve put it in a .env file 🤫😏 hehe
@chucknorris7995
Жыл бұрын
@@codecommerce Do you have a video on .env files? I've been meaning to figure how to use them. Also, the feature: get current weather data by city has been depracated. Is still works tho. I been trying to get the coordinates from their geolocation api and then pipe that in to another api call.Kinda struggling with it. lol Thanks for the awesome content!
man i create apps fine but learning CSS with you really helped me a lot thanks from INDIA brother loved this project a lot
@codecommerce
Жыл бұрын
Thanks dude! Much love! 💪
Increase the font size of Vs code so its easier to follow along. Thank you.
@codecommerce
Жыл бұрын
Will do!
on minute 20:20 , why did you initialize the first state with {} as an object and the second one with "" as a string? how do i know when to use those?
@archanarai2423
6 ай бұрын
I think it's because the data is gonna refer to whole json data object where as location is used only to store city name so it's initialized as empty string
The fahrenheit is bit off for me, i.e. when I type in Dallas I get 9F instead of 49F. what may be causing this issue?
@codecommerce
2 жыл бұрын
Hmm sounds like you may be getting back celcius instead of fahrenheit perhaps? You would just need to alter the url value.
I was scratching my head because of the back ticks in the "url" variable. 😂
I made a project like yours, following all those steps and I've finishided it. But, my extension "Live Server" isn't working all at. I've tried every option to have my project displaying on my browser and I couldn't. The things I've tried: - host IP; - choosing another browser; - windows's default browser; - linking CSS to ReactJS; - opening the project with the directory of origin; - naming the folders correctly. Do you have another option to suggest me? -- If you can help me out, I will be pleased. I need your help 😢😢😢 Anyways, buddy, nice tutorial and great job! Congrats!
What if I want to print those responses to any specified file format like csv?
@codecommerce
2 жыл бұрын
Hi Nyasha, I would have to look that up. I am not sure off the top of my head.
Thanks for tutorial buddy, just wanted to say that your warning it was in line 43 need to be ( !==).
@codecommerce
2 жыл бұрын
Thank you Aurrel- I appreciate that.
Which extention have you used for creating div with classname directly using the dot operator?
@codecommerce
2 жыл бұрын
That is with vs code “emmet”. I believe it comes natively.
@aiortairaan5458
2 жыл бұрын
@@codecommerce yup got it sorted
Should this project contains 2 microservices communicating each other ?
Hey Clint, thanks a lot por the vid!! I was wondering how to add an image based on the data for ex, when its raining a rainy img in the background. Also if you could tell me how to make it responsive for mobiles, im a noob with react D:
@carlosamaral6917
2 жыл бұрын
Just watch other videos Clint has to make it responsive. About changing the image according to the weather, watch the bmi one, because he implements it there. I'll do that myself too... But now that I see better, this app is already responsive!
@Meithe1
2 жыл бұрын
@@carlosamaral6917 Will do, but is it? I coded it watching the vod and when i open it with my cellphone it shrinks on the bottom
@carlosamaral6917
2 жыл бұрын
@@Meithe1 I think that's the idea
@codecommerce
2 жыл бұрын
Thanks Carlos!
@carlosamaral6917
2 жыл бұрын
@@codecommerce You're welcome!!
I have a proplem everything is going well except when i take the weather.json data inside the file are not shown can you help me please
@codecommerce
2 жыл бұрын
Fatma, do you have a gh?
What happened in 6:43 I didnt get it and how the weather(1).json changes into like that
@codecommerce
2 жыл бұрын
So I just copied the response and pasted into a js file. When I saved it, the data was formatted nice and “pretty”. I’m using the “Prettier” ext to format all of my code.
how did you format the json info that you saved from the website into vscode?
@codecommerce
Жыл бұрын
If you are referring to how it’s formatted in vscode then that is all vscode! :)
@camo4970
Жыл бұрын
@@codecommerce yeah man! I got it formatted when I installed the prettier extension. 👍
28.22 you could have just used optional chaining
Hi Im triying to use this tutorial but the Api is now a version 3.0 , Im not being able to follow it because theres is no city parameter on the 3.0, the one that you use is a 2.5
@codecommerce
2 жыл бұрын
Ah yes, the world of tech - always evolving!