This Is The Perfect Project For Your React/TypeScript Resume

Поделиться
HTML-код
  • Опубликовано: 25 окт 2024

Комментарии • 160

  • @akshatsheth4182
    @akshatsheth4182 2 года назад +36

    bro great work... not just for this but for all the stuff .... learned a lot

  • @the_lee_effect
    @the_lee_effect 2 года назад +10

    I created something similar for my organization some few months ago since already made libraries couldn't serve our needs and they were a little difficult to overwrite or should I say hack into.. It had option to select all options, clear all options, scroll any selected option into view, an input field at the bottom of the list to add one extra option to the list with the ability to edit that one option, plus all the accessibility as well.. GREAT WORK KYLE 💪👍👍👍

    • @destroreact5706
      @destroreact5706 2 года назад

      An option to select or deselect all, that's a pretty good idea.

  • @royhyde8842
    @royhyde8842 2 года назад +4

    What a wonderful video.. my knowledge of Typescript is low but I was able to follow your tutorial with alot of ease because of how well you teach. Keep up the great work.👏👏

  • @susmitobhattacharyya1668
    @susmitobhattacharyya1668 Год назад

    Super awesome man. You helped me by solving two bugs.... The keyboard accessibility was just the best!!!

  • @Кашель-о5у
    @Кашель-о5у Год назад +1

    Gold video, i used that instead react-select npm, great work!

  • @alphabutbeta
    @alphabutbeta Год назад +9

    Learned much more through this tutorial than the hours of online courses i purchased. Almost feel guilty for being able to watch this for free. Thanks King!

    • @John-eq5cd
      @John-eq5cd Год назад +1

      Don't feel guilty, send him a donation.

  • @9diweshkr9
    @9diweshkr9 2 года назад +2

    Newly entered into javascript and react world... Great video 👏 keep up this great work 🙏

    • @coderyan
      @coderyan 2 года назад

      Good luck with your JavaScript and React learnings!

  • @Nil-js4bf
    @Nil-js4bf Год назад

    Super helpful. I always reach for libraries for this kind of stuff so I had no idea how one would even begin implementing something like this. Your explanation was extremely concise and clear.

  • @anshikgupta2993
    @anshikgupta2993 2 года назад +1

    This is what I have been looking for. Thanks you have our back 🙌

  • @waleedsharif618
    @waleedsharif618 2 года назад +1

    Wow, today i actually needed this functionality in my project, thanks !

  • @richnimbu
    @richnimbu 2 года назад +1

    You're such a good guy. I LOVE that I can always learn something from your videos.

  • @pavelasafov
    @pavelasafov Год назад

    Thank you! Very lucidly explained. I did it on jsx files, everything worked as I need for my project. Great!

  • @alecs93
    @alecs93 2 года назад +1

    I’ve learned so many things in this little amount of time ! Thank you so much !

  • @abdellatif.x8127
    @abdellatif.x8127 2 года назад +5

    As always, great content that make developers improve their knowledge 👏

  • @wdsenjoyer9960
    @wdsenjoyer9960 2 года назад +2

    Amazing tutorial,.. as always to be fair. Loved it!

  • @alexzhu4867
    @alexzhu4867 2 года назад

    using it for a few years and now I want to upgrade and I'm happy I did that.

  • @VaibhavShewale
    @VaibhavShewale 2 года назад +1

    damn that was so awesome it was just going on and on!
    need to think of something useful and develop something around it so that i can add it in my github and resume

  • @voldemore6300
    @voldemore6300 2 года назад

    Nice!!! Keep producing such a informative video bro🎉

  • @cool_scatter
    @cool_scatter 2 года назад

    Good stuff using vite instead of CRA! It's so much better in every single way.

  • @oleksandrluchytskyi6867
    @oleksandrluchytskyi6867 2 года назад +1

    Very interesting! 👍 But for resume i suggest few things. 1. Apply some sort order to the component's props (it is hard to read mix of func and props ) 2. To use " double quotes only for attribute's values (remove them from JS) 3. Move event handler logic from JSX to the separate event handler function.

  • @bhatiashivam
    @bhatiashivam 2 года назад

    Really really needed this. Thank you so much!

  • @nishantshah_
    @nishantshah_ 2 года назад

    Awesome concept and product, great work mate

  • @mohamedabdulla8097
    @mohamedabdulla8097 2 года назад

    Great work.. please do more content with typescript

  • @computersdontcompost
    @computersdontcompost 2 года назад +7

    I think there is a problem with arrowUp/Down handler when options have enough elements for scroll to appear. Probably it would be better to scroll to hightlighed element.

  • @FreLee54
    @FreLee54 2 года назад +4

    Hello Kyle!
    Nice tutorial as always. I relly like this dropdown-component
    I have a question. Why did you add a ref and an eventlistener to listen for keystrokes and not the onKeyDown-attribute to the div?
    Example:

    • @WebDevSimplified
      @WebDevSimplified  2 года назад +3

      That would have been a lot smarter. Not sure what I was thinking.

    • @cool__name
      @cool__name Год назад

      ​@@WebDevSimplified What keyboard do you use?

  • @pritish3565
    @pritish3565 Год назад

    Plz make more videos on making a custom react components like this

  • @SogMosee
    @SogMosee 2 года назад +3

    Thanks for the video dude! Can you do one for dropdown menus that open in a portal (but still position themselves under the dropdown trigger)? Please please please!

  • @Evikeuklavier
    @Evikeuklavier 2 года назад +3

    Could you add the keyboard logic directly to the container div onKeyDown prop, since it has tabIndex which means it can get focused? It should run the logic when focused without having to check if e.target is equal to the ref.current. This would remove the need for useRef as well. And the logic won't be run if you've blurred from the div.

  • @runngun5759
    @runngun5759 6 месяцев назад

    I've had to make a similar component but I needed to add links in each selection and links for adding new items at the bottom without js and it took me 2 hrs to make it work without bugs

  • @alexalannunes
    @alexalannunes 2 года назад

    Awesome.. 🥳🥳🥳 I was needing this

  • @rajdhakate617
    @rajdhakate617 2 года назад +1

    Thanks for this tutorial.
    Would really want to see more react native stuffs. And can you try notion and Google sheets as db.
    Thanks as always

  • @truongbang5028
    @truongbang5028 Год назад

    Thank you! It's very helpful!!

  • @royhyde8842
    @royhyde8842 2 года назад +2

    Hey Kyle, Great video once again, I am just curious how you would implement the scroll functionality when using keys to navigate the ul.

  • @humorant3721
    @humorant3721 2 года назад +1

    Hey, I'm just starting to get into making soft and tNice tutorials 17 minute video helped a LOT MORE than those one hour long tutorials out

  • @alvaroambiorixmarcelinotav6536
    @alvaroambiorixmarcelinotav6536 Год назад +1

    Thank you so much Kyle!!! How can I get only the Id in an array in order to save it in a Database?
    I’ve been trying but I had haven a lot of errors.
    Can you help me please?
    Greetings from Dominican Republic

  • @MichaelRichins
    @MichaelRichins 2 года назад +9

    This is great and thank you for showcasing some accessibility features. I love your vids and watch almost all of them when they come out. Keep it up!.
    However, this is not WCAG 2.0 (AA or AAA) compliant. You are neglecting the proper aria attributes, color contrast requirements, and several other criteria. I get that you are trying to teach, but someone could take this as being fully accessible and just using it in their code only to realize that it is not.

  • @IslomMamarejapov
    @IslomMamarejapov Месяц назад

    very good bratan juda yaxhshi

  • @BeeBeeEight
    @BeeBeeEight 2 года назад +1

    Thank you so much for this vid, Kyle! There is just one thing I'd ask; you seem to prefer types exclusively over interfaces, is there a reason for that or just a preference?

  • @studiohuyenanh
    @studiohuyenanh 2 года назад

    This is great, thank you!

  • @rzilla92
    @rzilla92 Год назад +2

    Hi, thanks for the video. I'm having an issue where the multiselect does not work on both my own code and the provided github code. I'm very new with typescript, but i'm suspecting the onChange=[...value, option] is invoked as null . Did I do something wrong?

  • @femmytedreycryptoworld7875
    @femmytedreycryptoworld7875 4 месяца назад

    You are just too good, as in extremely good...

  • @TwoTeaTee
    @TwoTeaTee 2 года назад

    NGL, this requirement came up for my project this week!

  • @isaacabrego8150
    @isaacabrego8150 Год назад

    Great tutorial Kyle!! I just loved it. I do have a question... Has anyone tried to implement this component with react hook form? I am testing now a way to do that but the simple way is not working. I'm not sure if I need to type the native select component and hide it afterwards, it would be just to spread the value of the register function that the library provides. If anyone has an idea I would appreciate your comments!!

  • @chetanjain4616
    @chetanjain4616 2 года назад +1

    great video... but wouldn't it be better to use hover effect instead of highlighted logic that you used?

  • @edutomclasses3784
    @edutomclasses3784 2 года назад

    Thank you for tNice tutorials very clear and concise tutorial. Look forward to more videos from u

  • @miloman1995s
    @miloman1995s Год назад

    that is awesome, done such thing by myself on work,, but using 'downshift' lib... it was really hard, im middle frontend-developer.... and i was need to create a select that can be multi/single select, search and also you can add some new option when typing somethin in it.... and if it is a multi select - must show tags with close buttons placed left to input element (which is select in multi mod...) gosh))) and also i was need to resize my input element when typing text up to text size))) there i took react-input-autosize lib and reedit it to functional component.... to use it (because project is ui-kit for local usage in other projects of our company) ... it was a challange... cause im about creating new react-redux connections... fetching stuff and mapping collections and was never doing such a lot of stuff like creating multifunctional component for reusage)) thx for the video... wow..

  • @omarkraidie
    @omarkraidie 2 года назад

    Great video thanks!

  • @pbayat6667
    @pbayat6667 2 года назад

    Wonderful tutorial, Just a question, why you did not use arrow functions inside the component? there are any points?

  • @bobmagrega
    @bobmagrega 6 месяцев назад

    hey! Thank you for the video
    I have a quick question
    Why did transform: 0 25% on the caret made it center in container?

  • @geforcesong
    @geforcesong 2 года назад

    excellent tutorial

  • @AminSani
    @AminSani 2 года назад

    It is a great project! Thank you so much

  • @SaifAli-rq7rf
    @SaifAli-rq7rf 2 года назад

    channel, I want that soft to be the sa in other desired channels without having to go there and doing manually.

  • @canerdemircigm
    @canerdemircigm 8 месяцев назад

    I want to make a zoom slider component for use any project but I wonder how I ensure css consistency? I want it not to be affected another css rules.

  • @skapha
    @skapha Год назад

    Amazing! Thanks

  • @davidsosa5940
    @davidsosa5940 2 года назад

    Love the TS videos keep it up !

  • @VaibhavShewale
    @VaibhavShewale 2 года назад +1

    why we use vite instead of normal react? would there will be any problem or something

  • @AuxiliaryOfficial
    @AuxiliaryOfficial Год назад

    I challenge you to make a reusable datepicker, modal, carousel or other useful ui component that commonly used using react and typescript

  • @Aji0t
    @Aji0t Год назад

    Thanks for the video. But after assigning keyboard listener, and if the list of items are large, on pressing keydown, the list would not scroll, just the highlighted Index will go down. So how to make the list scroll and also while setting the highList Index

  • @plujudramunqk
    @plujudramunqk Год назад +1

    Is implementing .option.highlighted with simple .option:hover { bg-color: #111} in the CSS file somehow wrong? I mean I'm new but why should we make it more complex by using states onMouseEnter and implementing functions to handle it?

  • @kjn6037
    @kjn6037 10 месяцев назад

    Would be interesting if you could add a search feature here

  • @eddyelamin9015
    @eddyelamin9015 2 года назад +13

    Kyle, can we get a learn Typescript in 30 minutes video 🥲

    • @neatelf9913
      @neatelf9913 Год назад +2

      Check Codevolution's video as it covers in 50 mins.

  • @diassagatov2195
    @diassagatov2195 5 месяцев назад

    learned a lot, thankss

  • @talleyrand9530
    @talleyrand9530 6 месяцев назад

    Thanks Kyle! Can I use this w/ Next.js action servers?

  • @yevhenlysenko7444
    @yevhenlysenko7444 2 года назад +1

    great job💯

  • @everyDev-everyDay
    @everyDev-everyDay 6 месяцев назад

    jest super simple greatness, good job

  • @MohdSuhail-c9e
    @MohdSuhail-c9e Год назад

    Would it be better to create a custom hook for this instead a component?

  • @berkaycirak
    @berkaycirak 2 года назад +1

    Hi, I am a self-taught frontend developer and wondering that question : If there are no-code websites like wordpress and wix, why people need frontend developer ? They can do same things via wordpress instead of tons of code

    • @loogie5679
      @loogie5679 2 года назад +1

      the answer is simple : you can't create websites like wordpress using wordpress ;)

    • @odek7288
      @odek7288 2 года назад +2

      For static websites and simple crud, probably yes. Complex web app ? not even close 🙂

    • @julian4695
      @julian4695 2 года назад +1

      well those websites are quite good at creating the HTML and CSS - but JS not so much (so the less static a website is the more you need a real dev)

    • @coderyan
      @coderyan 2 года назад

      As complexity scales, it's going to be more and more challenging to use an "out of the box" solution like wordpress or wix

  • @Yassineaalouch
    @Yassineaalouch Месяц назад

    thank you bro

  • @turbulantarchitect5286
    @turbulantarchitect5286 2 года назад +1

    how onblur and clickoutside hook are different?

  • @shahanahmedkhan6101
    @shahanahmedkhan6101 2 года назад

    Hey Kyle, If we wanna give dynamic/optional styling on an element the video shows to implement it with backticks but can't we use CLSX to give styling on an element on condition?

  • @tienongoc1286
    @tienongoc1286 2 года назад

    all the different elents together in a language that is universal. I've seen plenty of DAW tutorials being new, but tNice tutorials is by far the best so

  • @henristahl7203
    @henristahl7203 Год назад

    Would love to see a second part where you make this screen reader accessible as well!

  • @TheTruthGER
    @TheTruthGER 2 года назад

    21:16 Is there a special reason why you are using `typeof options[0]` instead of the `SelectOption` interface for the type of the state?
    Edit: Never mind. You changed that later in the video :D

  • @bcr666-cvn68
    @bcr666-cvn68 Год назад

    How do you package something like this so you can use it in a plain javascript project?

  • @Asylum377
    @Asylum377 2 года назад

    Do you have any video on typescript with react context API?

  • @goranqaqnass5867
    @goranqaqnass5867 5 месяцев назад

    thanks amazing!

  • @ihorpyvovarov2656
    @ihorpyvovarov2656 2 года назад

    Can I use this example on production? I think it can be optimized somehow. Would be nice to see video on this theme! Because this component Select.tsx looks very big and mess. Or it is normal?

  • @jeanleiser3302
    @jeanleiser3302 2 года назад

    Great lesson thx mate ! I'm learning web dev and I'm digging React since a week. Why would you choose modules.css instead of Styled components ?

    • @mohamedabdulla8097
      @mohamedabdulla8097 2 года назад

      Styled components is an additional library. We don't need it for such small projects. So he uses this

    • @maharta8458
      @maharta8458 2 года назад

      It's just a matter of preference, i myself prefeer css modules over styled components.

  • @dallaspalumbo9889
    @dallaspalumbo9889 Год назад

    Where did the caret come from? I dont see anything representing it in the html besides the empty div and the css does nothing for me

  • @slackergeek2007
    @slackergeek2007 2 года назад

    I was just searching for something like this last night and watched a ton of videos. Most didn't cover what you cover.

  • @cool__name
    @cool__name Год назад

    @WebDevSimplified What keyboard do you use?

  • @funnyanimalworld7579
    @funnyanimalworld7579 2 года назад

    Is it searchable and clearable? And does multiselect selections area have scrollbar if there are many options selected?

  • @rakshithk9858
    @rakshithk9858 8 месяцев назад

    Can we implement a selectAll feature to this?

  • @BobbyBundlez
    @BobbyBundlez Год назад

    do you think this is a good level to master stuff for a junior job? I have been a "front end dev" for a year and a half but have no code reviews and just build websites with gatsby from figma designs. I really want to advance my career and I am wondering what level this is considered. thank you for your lessons

  • @felipeasfarias
    @felipeasfarias Год назад

    Hello there! This custom component supports async calls? I need to create a component that performs well with long data

  • @SinaFakhreddin
    @SinaFakhreddin Год назад

    in select option function and in comparision of value and option , this always returns falsy value , because it refers to the addrese of the storage location in memory, so i think that should be converted to JSON.stringify(option)!==JSON.stringify(value) , is this true???

  • @SonHoang-jv8dy
    @SonHoang-jv8dy 2 года назад

    Nice tutorial ... I've got a problem ... when I first used soft soft , there were so tutorial such as Slayer , wNice tutorialch disappeared after I

  • @DW-cj2hk
    @DW-cj2hk 2 года назад

    Hi thank you for the video. At 18:35 why is it styles.show instead of styles.options.show?

  • @codewithbenji
    @codewithbenji 2 года назад

    Hey thanks for the video is it possible to add in a search 🔍

  • @soumyaranjanpanda7532
    @soumyaranjanpanda7532 Год назад

    hey , how this thing is working, can someone please explain ?
    value.includes(option)
    value is an array of objects and option is an object, so it shouldn't work right ?

  • @agyeirichmondowusu9670
    @agyeirichmondowusu9670 2 года назад

    Hello sir. Please how were you able to dive deep into js, Are there any hints for us?

    • @coderyan
      @coderyan 2 года назад

      I recommend a course by FrontendMasters called the "Hard Parts" of JS

  • @darakh9389
    @darakh9389 2 года назад

    thats a good sign imo

  • @waleedsharif618
    @waleedsharif618 2 года назад

    One question, if i want to do this using material ui select, can we do this on that?

  • @shawnlee5956
    @shawnlee5956 2 года назад

    hi ~ WDS
    what are the reasons for choosing PropelAuth rather than Firebase Auth?

    • @WebDevSimplified
      @WebDevSimplified  2 года назад +1

      Firebase auth is a very basic auth system that doesn't include many features like 2FA, SSO, SAML, etc. If all you need is simple aith then firebase is fine, but if you need more than that then firebase is probably not best.

    • @shawnlee5956
      @shawnlee5956 2 года назад

      @@WebDevSimplified thanks

  • @sky78710
    @sky78710 2 года назад

    How about the performance of typescript within react?

  • @druf5962
    @druf5962 Год назад

    how long does it take for a junior to write such code?

  • @alasassi5889
    @alasassi5889 Год назад

    22:30 how when he enter a save the code structure change like that someone reply please

  • @glitchinLife
    @glitchinLife 2 года назад

    Brilliant

  • @amiteshwarmann7556
    @amiteshwarmann7556 Год назад

    how can i use this as a component in my react.js project?

  • @consoledoterror971
    @consoledoterror971 3 месяца назад

    why not use portal for options?