Fullstack Autocomplete Search with Algolia

Поділитися
Вставка
  • Опубліковано 15 вер 2024
  • Build a fullstack 🔎 fulltext autocomplete search feature with Algolia and Firebase, with implementations covering Node.js, Svelte, and Angular. fireship.io/le...
    - Algolia www.algolia.com/
    #algolia #nodejs #firebase
    Take the quiz 🤓
    iOS itunes.apple.c...
    Android play.google.co...
    Upgrade to Fireship PRO at fireship.io/pro
    Use code lORhwXd2 for 25% off your first payment.

КОМЕНТАРІ • 94

  • @dependersethi1345
    @dependersethi1345 5 років тому +50

    ♥️ Sometimes it feels like you exactly know what we want

  • @rondamon4408
    @rondamon4408 5 років тому +12

    I've used Algolia and I have to confess that it is more limited than what we think.
    I'd prefer using elastic search.

  • @FilledStacks
    @FilledStacks 5 років тому +22

    Community Members: Can you please add search to your website
    Me: I don't have the time to do it
    Fireship: It'll only take 12 minutes 13 seconds*
    Me: On it!!!

    • @Llewellyn1411
      @Llewellyn1411 5 років тому

      Sometimes I feel like he is reading my mind

    • @FilledStacks
      @FilledStacks 5 років тому

      @@Llewellyn1411 Yup. All the time :)

  • @johnnyoshika5920
    @johnnyoshika5920 3 роки тому

    That tip on how you can run functions locally with admin credentials being injected automatically is a great one. Thank you!

  • @ralabralab-yv8ux
    @ralabralab-yv8ux 5 років тому +3

    Excellent.
    I hope you make a video for implementing Firestore full-text search in Flutter using Algolia

  • @masterize
    @masterize 4 роки тому +5

    the addObject was not working for me (I was getting the Index.addObject is not a function from the Firestore functions log). I switched to saveObject and it works.

  • @LeoZeronljz
    @LeoZeronljz 5 років тому +2

    Mi comentario en español, este es uno de mis Canales favoritos, referencia inmediata a la hora de necesitar ideas gracias

  • @mabdullahsari
    @mabdullahsari 5 років тому +16

    Pricing is exactly why I use Elastic instead of Algolia. Otherwise, I'd actually prefer the latter.

    • @Fireship
      @Fireship  5 років тому +18

      Yeah I get that. I might do a self hosted elastic search video in the future.

    • @mabdullahsari
      @mabdullahsari 5 років тому

      @@Fireship Keep up the good work :)

    • @RadTwin
      @RadTwin 5 років тому +2

      Elasticsearch & Kibana running on docker is 🔥🔥

    • @lenguajesdeprogramacionson5050
      @lenguajesdeprogramacionson5050 5 років тому +1

      @@Fireship man, I'll really appreciate if you do that. I need it

  • @ericaskari
    @ericaskari 5 років тому

    This channel is awesome. I learned qlot about rxjs from this channel. Thanks.

  • @MuhammadbinYusrat
    @MuhammadbinYusrat 4 роки тому +2

    I am thinking: won't it be cheap to just go with a simple node/mysql server if we want a full text search instead of cloud firestore? I mean if Algolia is going to do for me what we already did since forever, I seem to not understand the point of using cloud firestore and then linking it to Algolia. Please, I request you to correct me. It seems I am missing something really obvious here. Thanks in advance.

  • @lordswaggity1213
    @lordswaggity1213 5 років тому +15

    I remember using elastic search a long time back. Is this similar?

    • @Fireship
      @Fireship  5 років тому +18

      Yes, same type of service, but more developer friendly. I may do a video on a self hosted elastic search, which is cheaper if you tons of records.

    • @TheBadFred
      @TheBadFred 5 років тому +1

      That's what I thought or Endeca from Oracle for E-Commerce

    • @ektonas
      @ektonas 5 років тому +1

      @@Fireship Yes! Do it! At least so I know what exactly I'm paying for :D

    • @ilhamfirdausiputra7527
      @ilhamfirdausiputra7527 4 роки тому +1

      @@Fireship Yes! Please doo.. This is exactly what I needed :D
      Looking at Algolia pricing, this is just simply impractical for developers in developing countries..

  • @ovieokeh
    @ovieokeh 5 років тому +30

    You expose me to different sides of software development that I otherwise wouldn't get to see ♥️

  • @shashikantmarskole
    @shashikantmarskole 2 роки тому

    thank you , easy and quickly explaintion.

  • @bazinga630
    @bazinga630 3 роки тому +1

    Please do a typesense tutorial , typesense is open source and really really cheap.

  • @TimeoutMegagameplays
    @TimeoutMegagameplays 5 років тому +3

    For Flutter please!

  • @johannesw.670
    @johannesw.670 Рік тому

    As always great content! What's you opinion on Typesense?

  • @mrousavy
    @mrousavy 4 роки тому

    Is there a valid reason for using the pre-built components in a real world production app? I've had some trouble customizing the view in my React app to look like a view I already had prototyped before using Algoliasearch

  • @RageBasterd
    @RageBasterd 5 років тому +2

    awsome, very usefull.

    • @Fireship
      @Fireship  5 років тому

      Thank you Rage :)

  •  4 роки тому

    Great concise video

  • @ElbinBinil
    @ElbinBinil 3 роки тому +2

    How to use this with express

    • @divyanshusah2809
      @divyanshusah2809 3 роки тому +2

      Connect express and Aloglia private key. And send GET request to app.get(/search) in POSTMAN or INSOMNIA 👍

  • @ram_pednekar14
    @ram_pednekar14 5 років тому

    Firbase is fast and scalable, but it cheap? I doubt this. Btw thanks for the video.

  • @sepehrazizi1491
    @sepehrazizi1491 5 років тому

    hey there Jeff! how are you doing? i'm a big fan of your channel, it really helped me A LOT!!! but i really stuck on choosing the right ui framework for Angular. the only good ui framework i found was Ionic but it doesn't look as good as Material Angular. on the other hand Material Angular is sooo incomplete and unresponsive. there is a Nubelar Framework which looks really beautiful but still looks really incomplete. which framework do you suggest for my Angular project?

  • @hojdog
    @hojdog 5 років тому

    I'm getting a weird issue where my seed file is populating a different project :O (a client's project!) took me a while to figure that that was happening. Luckily no db damage or anything. Haven't figured out why - the functions deploy to the right project.

  • @tranquillityEnthusiast
    @tranquillityEnthusiast 5 років тому

    You could have used Nx for Fullstack(angular and nest)....

  • @techzone-lk-zone3075
    @techzone-lk-zone3075 5 років тому +1

    good one

  • @ramirezvilla
    @ramirezvilla 4 місяці тому

    could you an update with angular instant-search with Angular v17? pretty please

  • @elmotareal
    @elmotareal 5 років тому

    Noticed the await for keyup, would it perform well or would you have a different advice for real implantation using a timeout, or delays

    • @Fireship
      @Fireship  5 років тому

      Denouncing the event would be a good idea. This is more of a bare minimum example.

  • @MindzGroupTech
    @MindzGroupTech 5 років тому +1

    Wait ... What you said at 3:30 "change the firebase environment variables, without redeploy" how? All i know that every time i have to change anything in there i am required to redeploy the functions. So can you please help me understand what you are talking about and how we can change config without redeploy.

    • @abdoufma
      @abdoufma 5 років тому

      That means exactly what he said: by setting the app_id and the admin_key as environment variables, their values are loaded dynamically through the environment, as opposed to manually (re)hard coding them each time their values change

    • @MindzGroupTech
      @MindzGroupTech 5 років тому

      @@abdoufma everytime I call the firebase functions:config.set key=value CLI tell it clearly that it is required to redeploy the functions. So what i am missing here. I have tried that for a function to start using the new value, it must be redeployed as the .runtimeconfig.json is not updated until then in the deployed functions.

    • @abdoufma
      @abdoufma 5 років тому

      @@MindzGroupTech Not sure what to tell you man, it works fine for me, have ou tried updating to the latest version of the CLI tools?

  • @maciejzalewski6920
    @maciejzalewski6920 4 роки тому

    I am confused. Isn't the firestore redundant in this example? You are duplicating all the data after all. Best, MZ

  • @suraj-ram7488
    @suraj-ram7488 5 років тому

    How do you come up with these brilliant ideas?

  • @Llewellyn1411
    @Llewellyn1411 5 років тому

    Another great video!!

  • @nothingtoseehere793
    @nothingtoseehere793 2 роки тому

    Update* Algolia has updated their pricing tier

  • @ahnaafarafee
    @ahnaafarafee 3 роки тому

    can I use algolia with firebase Spark plan?

  • @shelby255
    @shelby255 3 роки тому

    Don't you need to enable billing to use functions

  • @demohub
    @demohub 3 роки тому

    Wow. Amazing

  • @Rotem_shwartz
    @Rotem_shwartz 5 років тому

    Your not setting a debounce time on purpose because algoli knows how to handle a lot of requests or you just didnt mentioned it and it is a good practice to debounce?

    • @Fireship
      @Fireship  5 років тому

      On the svelte example it would be a good idea to debounce, but the Angular instantsearch example it should already be perf optimized.

    • @Rotem_shwartz
      @Rotem_shwartz 5 років тому

      Fireship great, thank you

    • @rusithgayashan3927
      @rusithgayashan3927 5 років тому

      @@Fireship I was following along the tutorial and noticed angular instantsearch makes a new request (operation) per every key stroke. It doesn't use debouncing at all

    • @Fireship
      @Fireship  5 років тому

      @@rusithgayashan3927 I believe that is the intended behavior. Instantsearch caches the results so it's not making a full round trip to the server on each stroke. If it's fast, everything is OK.

  • @maxxxeeem
    @maxxxeeem 3 роки тому

    5:47 I cant see my functions on firebase, there is no chance to set up functions without payment?

    • @outis99
      @outis99 3 роки тому

      If you use the Blaze plan, it's pay as you go, if you're just building a personal project unless you had an infinite loop that did like a million computations per day you'd be fine and most importantly free, but even then you can set up budget alerts

  • @gauravvarma3645
    @gauravvarma3645 Рік тому

    Love it

  • @heksqer1022
    @heksqer1022 5 років тому

    Went completely over my head but cool video I guess ..

  • @rashadelbanna1211
    @rashadelbanna1211 4 роки тому

    firebase deploy dont work with me he return error in terminal i wont help

  • @ourtrishan8884
    @ourtrishan8884 5 років тому +1

    You made videos on Algolia previously. Is there any difference?

    • @Fireship
      @Fireship  5 років тому +5

      The backend code is basically the same, but the Frontend libraries have changed significantly, so felt like it was time to update.

    • @ourtrishan8884
      @ourtrishan8884 5 років тому

      @@Fireship Thank you so much for your clarification Jeff.

  • @JohnDoe-zc4mu
    @JohnDoe-zc4mu 5 років тому

    awesome!

  • @rupayanc
    @rupayanc 4 роки тому

    Hi ,,, i tried using faker to write data to the firestore but everytime it fails ... please help me.. it gives an error saying
    UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 60)

    • @rupayanc
      @rupayanc 4 роки тому

      I tried using try catch and then got an error saying "no project id found in current environment"
      Note: I did put the seed.js file inside functions directory

    • @ROBLOXowns
      @ROBLOXowns 4 роки тому

      @@rupayanc I got something similar, see if this helps: firebase.google.com/docs/admin/setup#windows

  • @worldclasscode1847
    @worldclasscode1847 2 роки тому

    Nice video :)

  • @barikhojo
    @barikhojo 5 років тому +2

    Yo.. u rock

  • @kevintlu
    @kevintlu 4 роки тому

    Why is vue getting hated on? He even made a svelte app and not a vue one. 100% offended 😉

  • @errinwright
    @errinwright 3 роки тому

    Please make a Typescript Longsleeve white, and i will buy it, not a hoodie person. Frat people love longsleeves not hoodies

  • @donpuerto
    @donpuerto 5 років тому +1

    wheres the Vue and React?