Make a Search Bar with React (with API Calls) | Beginners Tutorial

  Рет қаралды 250,247

Code Complete

Code Complete

Күн бұрын

Through this tutorial, learn how to make a search bar component using React. This beginner project covers ReactJS, functional components, props, state, API calls using fetch, HTML, and CSS.
Are you looking to build a powerful search bar in React that can retrieve data from any API? Then look no further! In this comprehensive tutorial, we'll show you how to create a search bar component that connects to an API and fetches data dynamically using React.
Throughout the tutorial, we'll cover the basics of React and demonstrate how to use React hooks and state management to create a search bar that dynamically updates as you type.
By the end of the tutorial, you'll have a fully functional and professional-looking search bar component that can be used in any type of web application, including e-commerce, social media, or search engines. So don't wait any longer, start building your own search bar in React today!
🚨 Break into a software dev career with this free course from CourseCareers! - coursecareers.... 🚨
Discord - / discord
Subscribe - / @code_complete
☕ Donate to support the channel! - www.buymeacoff...
-- 🌟 Useful Tools and Software 🌟 --
🌐 10% off domains at Domain.com (use code DOMAIN10) - domain.mno8.ne...
☁️ FREE $100 for server hosting on Linode - linode.gvw92c....
📚 30% off annual Skillshare membership (use code annual30aff) - skillshare.eqc...
-- 🔗 Links 🔗 --
💻 Code - github.com/Cod...
DISCLAIMER: Some of the links in the description are affiliate links. The channel will receive a small commission from any sales from these links, but there is no extra charge to you. Thanks for supporting the channel so I can keep making these free tutorials!

Пікірлер: 152
@Code_Complete
@Code_Complete 8 ай бұрын
Have questions or feedback? Head over to our Discord server! discord.gg/TWBtv5an7N Solve advanced programming challenges and become an expert software engineer with CodeCrafters! 40% discount on your membership - app.codecrafters.io/join?via=CodeCompleteYT
@abhishekraisycs514
@abhishekraisycs514 Жыл бұрын
Great tutorial mate! Made this project at 12am at night while waiting for champions league clash between bayern vs psg.
@Code_Complete
@Code_Complete Жыл бұрын
Thanks man! Hope your team won 😃
@mikeyTheDev
@mikeyTheDev 10 ай бұрын
Clicked in this video accidentally, REALLY an AWESOME tutorial mate
@freddie4818
@freddie4818 Жыл бұрын
This was so great. Easy and clear to follow without being too slow. Thank you!
@RobertAlexanderRM
@RobertAlexanderRM 7 ай бұрын
I have been banging my head several times as a backend developer trying to whip up simple FE interfaces. Your video is the first that gets me somewhere. At last. Your patient explanations but some queries to ChatGPT are making me progress a little. Thanks a lot.
@Code_Complete
@Code_Complete 7 ай бұрын
Glad you found the video useful!
@garymiller8320
@garymiller8320 7 ай бұрын
Excellent video. The only criticism I have is the contrast is insufficient for those with low vision. I realize the focus is on the code, but the UI determines its accessibility. Please keep that in mind for future projects. Thanks!
@Anubis10110
@Anubis10110 Жыл бұрын
You can add debounce to save network calls… thanks for you effort
@Rohitweasley
@Rohitweasley 2 ай бұрын
That was really cool, I was looking into "react-search-box" package for the same functionality but that package was not very easily customizable. I didn't know I could implement it in such a straightforward manner. Thanks a lot!
@JesusOnAGoat
@JesusOnAGoat 6 ай бұрын
My god this is absolute life saver this video! I was struggling hard understanding the concepts and you explained it so well! Definitely gained a sub from me!
@minimunch1971
@minimunch1971 3 ай бұрын
This tutorial is great!! Thank you for explaining what each line of code is for, I learned a lot!
@codewar534
@codewar534 Жыл бұрын
Awesome tutorial man! Helped me a lot to learn api in react js!🔥
@Code_Complete
@Code_Complete Жыл бұрын
Glad it was useful!
@oscarmelgarejo8563
@oscarmelgarejo8563 6 ай бұрын
Hey! Thank you so much for sharing your knowledge with us. This video was a big help for me.
@abduab5453
@abduab5453 4 ай бұрын
just what i was looking for, thank you very much, i was trying to make my first react project using api but could not find relevant explanation.
@vladkara
@vladkara Жыл бұрын
Awesome! Short and very clear!
@Racine14
@Racine14 Жыл бұрын
Perfect tuto.... I'm from DR Congo and I wish all the best dear
@Code_Complete
@Code_Complete Жыл бұрын
Thank you so much 🙂
@adhinarayanakunchala
@adhinarayanakunchala Жыл бұрын
thanks sir its wonderful tutorial for learning anything
@tarunnaik3053
@tarunnaik3053 8 ай бұрын
Thank You so much for this wonderful lecture ☺️
@bykeride2-dw1ly
@bykeride2-dw1ly 4 ай бұрын
Just one word.... , superb.... Explanation
@AjayKasthala
@AjayKasthala Жыл бұрын
Need more Tutorials like these Kudos to you
@Code_Complete
@Code_Complete Жыл бұрын
Thanks a lot!
@kishorek4319
@kishorek4319 Жыл бұрын
Make More Useful tutorial like this.!! Iam ready to learn More from you bro..😍💜
@Code_Complete
@Code_Complete Жыл бұрын
Thanks a lot!
@farid9323
@farid9323 Жыл бұрын
Helpful tutorial. In production apps, you'd need debouncing. Otherwise, you'd be calling the API on every key stroke.
@BoldonBigLad
@BoldonBigLad Жыл бұрын
Brilliant video and it has helped me a great deal.
@RaselHasan-o2r
@RaselHasan-o2r Жыл бұрын
Loved you contents, thanks man
@sadmanh0
@sadmanh0 Жыл бұрын
very well presented, thanks.
@javedkhan0142
@javedkhan0142 Ай бұрын
Thank for creating this video
@jagadishdasari9120
@jagadishdasari9120 Жыл бұрын
Wonderful tutorial. Please do a common implementation across various JS flavors like Angular/React/Vue/etc to show the variance…👏
@freshhorizonswithjakub
@freshhorizonswithjakub Жыл бұрын
I feel like you really get it in react you should also get it in other frameworks. Concept is same.
@khurshedaalam7478
@khurshedaalam7478 Жыл бұрын
shanadar Jabardast Jindabad bhai ek dum super
@WencelausMaina
@WencelausMaina Жыл бұрын
This was very helpful. Thank you very much.
@Thinkwellpub
@Thinkwellpub 7 ай бұрын
Question. How do you clear the search bar once you click on something? Great tutorial! Thanks!
@raymondwienand8177
@raymondwienand8177 4 ай бұрын
Great video. It would be a much better user experience if you use text wrapping if you have the browser open on the side. And a bonus if you close the explorer on the side. Sometimes it's difficult to see what you typed
@chantal3616
@chantal3616 Жыл бұрын
Very helpful! Thanks! 😀
@cyborganic
@cyborganic 7 ай бұрын
Very helpful, thank you!
@mateusbessadev
@mateusbessadev 7 ай бұрын
Thx bro, that helped me a lot!!!
@sadimridha5753
@sadimridha5753 10 ай бұрын
That was great tutorial ❤
@sriramharshit2672
@sriramharshit2672 Ай бұрын
thanks a lot man
@hervogue
@hervogue 9 ай бұрын
Helpful! Thanks so much!
@segu_.
@segu_. 7 ай бұрын
good tutorial! wouldnt make more sense to fetch just one time the api and then run a filter method when input changes? thanks!
@Code_Complete
@Code_Complete 7 ай бұрын
Good question! That makes sense when we have < 100 items in our database for example but if we had 100,000 items for example, it would take a lot of bandwidth and time to first fetch all that data
@segu_.
@segu_. 7 ай бұрын
@@Code_Complete true!
@chungtunguyen6135
@chungtunguyen6135 10 ай бұрын
thanks for this tutorial, very helpfull!!!
@hajamydeen2025
@hajamydeen2025 Жыл бұрын
super explanation bro. more videos we need
@MaxMov-sp8hr
@MaxMov-sp8hr Жыл бұрын
Nice! Simple & Clear! ☀
@Code_Complete
@Code_Complete Жыл бұрын
Thank you! 🙂
@uchiha_sasuke_48
@uchiha_sasuke_48 Жыл бұрын
Superb and simple project
@Code_Complete
@Code_Complete Жыл бұрын
Glad you liked it!
@Patrick_Streams
@Patrick_Streams 9 ай бұрын
this is so helpful i was wondering how will I fetch multiple endpoint
@KJOB
@KJOB Жыл бұрын
I learned something new thanks
@saivivekachutha8282
@saivivekachutha8282 6 ай бұрын
yeah its looking good and understandable can you please explain the hole thing what you have done ? like not technical tell me in 5lines
@KuldeepSingh-jg9xz
@KuldeepSingh-jg9xz 3 ай бұрын
how do i set the value selected under SearchResults back to Searchbox . Can you also share that ?
@khushwantdafre3230
@khushwantdafre3230 Жыл бұрын
Excelent tutorial, I had one question, Insted of showing the results on the same page can we use react router to redirect to another page and show the results there?
@farid9323
@farid9323 Жыл бұрын
Yes. You could use global state with the router.
@rajatrai_
@rajatrai_ Жыл бұрын
you have gained a subscriber!
@Code_Complete
@Code_Complete Жыл бұрын
Thanks for subscribing!
@riteshsharma9838
@riteshsharma9838 Жыл бұрын
if you didn't remember how to reopen that all then open terminal 1) cd react-search-bar 2) npm install 3) npm run dev *** for those who closed the vscode and unable to open the whole website or local host***
@tahaansari5621
@tahaansari5621 Жыл бұрын
Great tutorial! I was wondering if we should be able to fetch results in the useEffect hook.
@Code_Complete
@Code_Complete Жыл бұрын
Great idea! That way the data only needs to be fetched once
@oluwatimilehinoyewo8010
@oluwatimilehinoyewo8010 Жыл бұрын
Wonderful tutorial man
@ShareVideo211
@ShareVideo211 3 ай бұрын
thank you very much
@PeriklesPeriklesoglu
@PeriklesPeriklesoglu 11 ай бұрын
thank you
@hemantjoon
@hemantjoon Жыл бұрын
To the point. Amazing Job Looking Forward for your new videos. Thanks for this
@Code_Complete
@Code_Complete Жыл бұрын
Thanks a lot!
@khadizaakter-j1h
@khadizaakter-j1h 6 ай бұрын
why didn't you use the useEffect for dependency?
@bhanureddy2087
@bhanureddy2087 14 күн бұрын
you should have shown the final output after finishing as this is a frontend project that mini view looks weird
@sharath_jonnala
@sharath_jonnala 8 ай бұрын
Can you please make a video how to implement binary search in this?
@sharath_jonnala
@sharath_jonnala 8 ай бұрын
By the way this is a nice video
@Code_Complete
@Code_Complete 7 ай бұрын
Oh that’s an interesting question! Could you share more details about what you would like in the discord server linked in the channel page? We can discuss a possible solution there
@ajiteshmishra0005
@ajiteshmishra0005 5 ай бұрын
What is the difference in creating React application using npx create react app or using vite creat react app?
@Code_Complete
@Code_Complete 5 ай бұрын
Both vite and create-react-app accomplish the same goal of starting a react project quickly. Vite is just better because it is more customizable and has a smaller bundle size
@ajiteshmishra0005
@ajiteshmishra0005 5 ай бұрын
@@Code_Complete I'm asking what is the difference we will have while coding. This is okay that we will have bundler as Vite NOT webpack. And what are all major difference we will have using vite?
@armat_dt
@armat_dt 5 ай бұрын
How to make delay between requests when typing, without delay it would be like dos attack to server😂 Very helpful video, thank you, hope for answer) Edit: you can use debounce method
@kakun7238
@kakun7238 Жыл бұрын
one for the infinite scrolling in this select too
@Code_Complete
@Code_Complete Жыл бұрын
Thanks for the great suggestion!
@turing4991
@turing4991 Жыл бұрын
will it return closest matching word? for example if i type "food" will it be able to detect the word "foods"
@cr7fanclubindiacr746
@cr7fanclubindiacr746 Жыл бұрын
Can i use different api from another website like google books api
@javedkhan0142
@javedkhan0142 Ай бұрын
You are good 👍
@HaroonKhan-ov4ru
@HaroonKhan-ov4ru 9 ай бұрын
Is there a way to have this feature search through two collections in a data base?
@mzeren4713
@mzeren4713 Жыл бұрын
it works when it is lowercase but it deosnt work when it will be uppercase
@Code_Complete
@Code_Complete Жыл бұрын
Good catch, it should be user.name.toLowerCase().includes(value.toLowerCase())
@Rashomon69
@Rashomon69 6 ай бұрын
This does an API request on EACH change? Isn't that a HECK of a lot of API calls?
@AdityaRaj-ki3md
@AdityaRaj-ki3md 7 ай бұрын
The video is great but if word wrap was on it will be easier to go with it.
@Code_Complete
@Code_Complete 7 ай бұрын
Good point, thanks! Will use it in my future videos
@Chandrashekhar_5555
@Chandrashekhar_5555 Жыл бұрын
super👌 . please make image editor with features having color change of image(also gradient color and monochrome) compress the image to reduce size , image characterisation by their types (png, jpg... ect)
@prashant0597
@prashant0597 11 ай бұрын
Can you make another video same as this but the API call using redux and show a list whatever inside in API.
@Ytrajpoot
@Ytrajpoot Жыл бұрын
Hello, when i create a build file with vite. The routing system does not work like its work fine inside website navigation but when I write URL by myself it say GET no request found
@EMdragonKnight
@EMdragonKnight Жыл бұрын
Similar answer I got from Chatgpt, but better explained.
@tomasburian6550
@tomasburian6550 5 ай бұрын
Why not make it on click? When you're working on a large project with a lot of data, you want to use a button-enabled search.
@sidforreal
@sidforreal Жыл бұрын
would be greate if you can cover FE interviews system design questions on this channel Subscribed!!
@Code_Complete
@Code_Complete Жыл бұрын
Thats a great idea! Will look into it 👍
@muhammadhaykal9323
@muhammadhaykal9323 Жыл бұрын
Hi please make video how to integrated otika or stisla bootstrap template to reactjs Because iam getting stuck sidebar not working when navigate to other page using react-router-dom
@sonugupta147
@sonugupta147 Жыл бұрын
At 15:50, I didn't understand how you evaluated those variables in the return statement as Boolean ?
@Code_Complete
@Code_Complete Жыл бұрын
In JS if a value is "falsy" i.e. null, undefined, 0, "", etc. it is treated as false. In that line I chained up multiple values which could be truthy or falsy using && operators
@sonugupta147
@sonugupta147 Жыл бұрын
@@Code_Complete thanks for your reply. Actually I was unaware that the filter function filters a particular element of the array based on the boolean returned from its callback.
@AlanSchooll
@AlanSchooll Жыл бұрын
Nice tutorial! You haven't used async in fetch data funtion, then how it can be used as for performing async function fetching data?
@Code_Complete
@Code_Complete Жыл бұрын
You can use async/await which is the new way of doing things or you can use promise chaining using .then() which is slightly older
@MvrkTeja
@MvrkTeja 6 ай бұрын
short and descriptive
@Arpit7899
@Arpit7899 Жыл бұрын
Hey buddy great tutorial. I had a question that inside fetchData function i am not able to change fetch to using hook useEffect - which is the new way. The error we get is - Hooks can only be called inside of a body of a function component. Basically they are asking us to use hooks only at the top level of react function. So any idea how we implement onChange but with hooks and not just fetch
@francisfuwaku
@francisfuwaku Жыл бұрын
make sure the useEffect comes before any codeblock like if(){}
@PaulPC999
@PaulPC999 Жыл бұрын
what if i have my own API, im getting an error 'products.filter is not a function'
@Code_Complete
@Code_Complete Жыл бұрын
You should try logging out what products is. This likely means its not an array and could be an object or undefined
@pulkitagrawal5054
@pulkitagrawal5054 Жыл бұрын
Can you tell me what should i do to automatically hide the search list if I scroll the page?
@crazygamepad6592
@crazygamepad6592 Жыл бұрын
use the propertie of your input html element, onFocus to show the suggestion and the items and onBlur to hide them
@tanoryjakaperdana1419
@tanoryjakaperdana1419 3 ай бұрын
Use filter on server side bro.. dont take all the datas from API just to filter it in front-end..
@abdullahjama8404
@abdullahjama8404 9 ай бұрын
lazy me didn't make alot component to make the react app look simpler and more organized
@nicx.nvrlnd
@nicx.nvrlnd Жыл бұрын
is it okay to use debounce?
@Code_Complete
@Code_Complete Жыл бұрын
Yup that would be great! I wanted to include that in this tutorial but thought it might be a bit too much for a beginners tutorial
@hybridgamer4105
@hybridgamer4105 10 ай бұрын
​@@Code_Complete But still debouncing will still result in more api calls, one solution i can think of is caching the data fetched from the api and then filtering the data in the frontend itself to reduce api calls. Is it right? Wanted to know what production level apps use
@derarageremu
@derarageremu Жыл бұрын
its great but make video of the same project by using next 13 app router.
@nnasim5089
@nnasim5089 Жыл бұрын
Very nice tutorial, can you tell us how you integrate Google or Bing Search API? In react app thanks
@fillpattanamontri8698
@fillpattanamontri8698 11 ай бұрын
12:29
@AvinashYede-ck2cs
@AvinashYede-ck2cs Жыл бұрын
can you make tutorial on redux
@Code_Complete
@Code_Complete Жыл бұрын
Will do 😃
@rakshithshetty6781
@rakshithshetty6781 Жыл бұрын
Use typehead
@mtt9119
@mtt9119 Жыл бұрын
Hello! Thank you very much for a very useful lesson! How to make it so that if we select Leanne Graham as a result, it will show us "username" and "email". For example: Leanne Graham Bret Sincereapril.biz
@johndevnoza4223
@johndevnoza4223 10 ай бұрын
man use time staps, so whoever wants can chose the part they are looking for.
@Malik-j5e
@Malik-j5e 6 ай бұрын
add something
@p1k1m4ru
@p1k1m4ru 6 ай бұрын
This is trash code. Each letter a sent to API? no one use alert() and maybe instead of input to alert you should fulfill the form? ahhh that was to hard i got it
@prabhat4571
@prabhat4571 Жыл бұрын
No need to create state in app man
@gorkaurzelai5072
@gorkaurzelai5072 9 ай бұрын
No?
@Omar-gr7km
@Omar-gr7km Жыл бұрын
That poor API. Getting called with every letter typed or deleted 🤣
@Omar-gr7km
@Omar-gr7km Жыл бұрын
Also, its strongly advised that you don't use map id as the key. In this example, each json item has an id, so you should use that.
@callous21
@callous21 8 ай бұрын
What should you do instead?
@Babajagrarox
@Babajagrarox 7 ай бұрын
Why so much prop drilling, is it a standard practice?
@rahulnikam1279
@rahulnikam1279 7 ай бұрын
As he is teaching for beginners you should not laugh... and don't try to be very cool in comments... you don't might even know the solution for that issue... Ans for this issue is: You can implement debounce on frontend and cache on server side! Study more about debounce ❤
@jefferyenofe2677
@jefferyenofe2677 6 ай бұрын
Api crying
@nazmuzsakib2368
@nazmuzsakib2368 Жыл бұрын
wrong method.
@kaushikid1
@kaushikid1 Жыл бұрын
Why don’t you teach the correct method ?
@josbexerra8115
@josbexerra8115 Жыл бұрын
Muchas gracias muy bien explicado gracias
@Code_Complete
@Code_Complete Жыл бұрын
¡de nada!
@ilirbajrami2902
@ilirbajrami2902 Жыл бұрын
isn't this going to skyrocket your hosting bill by making an api request in every key stroke?
@farid9323
@farid9323 Жыл бұрын
You would need to debounce the input.
@ilirbajrami2902
@ilirbajrami2902 Жыл бұрын
@@farid9323 can you please explain a bit what do you mean with "debounce"?
@hybridgamer4105
@hybridgamer4105 10 ай бұрын
​@@ilirbajrami2902basically debouncing delays the function call so instead of calling the api on every keystroke, you can set the delay to maybe 400ms so when the user stops typing or the keystrokes are delayed for more than 400ms then only the api would be called
@hybridgamer4105
@hybridgamer4105 10 ай бұрын
But still this will still result in more api calls, one solution i can think of is caching the data fetched from the api and then filtering the data in the frontend itself to reduce api calls
@felixfale964
@felixfale964 Жыл бұрын
Thank you brother, your tutorial really helped me
@Code_Complete
@Code_Complete Жыл бұрын
I’m glad it helped!
@HabibTamkin
@HabibTamkin Жыл бұрын
Hi I have a project the users table which I have to create a search bar and filtering the users but the API my partner back end did it now I become dizzy what should do? can you help me?
@hiteshpakhan7783
@hiteshpakhan7783 9 ай бұрын
this helps a lot thanks man
@yvnnhong
@yvnnhong 8 ай бұрын
thank you!!
Most Beginner React Developers Do This Wrong
13:47
Web Dev Simplified
Рет қаралды 233 М.
Search Bar with suggestions and filter in react for beginners
10:15
React with Masoud
Рет қаралды 88 М.
SHAPALAQ 6 серия / 3 часть #aminkavitaminka #aminak #aminokka #расулшоу
00:59
Аминка Витаминка
Рет қаралды 1,6 МЛН
Amazing Parenting Hacks! 👶✨ #ParentingTips #LifeHacks
00:18
Snack Chat
Рет қаралды 22 МЛН
Spongebob ate Patrick 😱 #meme #spongebob #gmod
00:15
Mr. LoLo
Рет қаралды 15 МЛН
Every React Concept Explained in 12 Minutes
11:53
Code Bootcamp
Рет қаралды 658 М.
Front-end web development is changing, quickly
3:43
Fireship
Рет қаралды 1,1 МЛН
Address Autocomplete  | google maps api reactjs
12:31
Mitter - Your Tech Mate
Рет қаралды 1,7 М.
Search Filter in React JS - Filter Through Results
8:53
Code Commerce
Рет қаралды 154 М.
Build a Search Bar with Next.js and Prisma (Search API endpoint)
40:22
These CSS PRO Tips & Tricks Will Blow Your Mind!
8:48
Coding2GO
Рет қаралды 334 М.
React Search Filter Tutorial Beginner to Advanced
26:50
Lama Dev
Рет қаралды 263 М.
This is the Only Right Way to Write React clean-code - SOLID
18:23
SHAPALAQ 6 серия / 3 часть #aminkavitaminka #aminak #aminokka #расулшоу
00:59
Аминка Витаминка
Рет қаралды 1,6 МЛН