Push Notifications Using Node.js & Service Worker

Поделиться
HTML-код
  • Опубликовано: 21 окт 2024
  • In this video we will create push notification capability using Node.js without any 3rd party services. We will achieve this using web-push, the push/notifications api and service workers.
    Code:
    github.com/bra...
    Webpush Repo:
    github.com/web...
    Helpful Articles:
    developers.goo...
    developers.goo...
    / a-beginners-guide-to-s...
    💖 Become a Patron: Show support & get perks!
    / traversymedia
    Website & Udemy Courses
    www.traversymed...
    Follow Traversy Media:
    / traversymedia
    / traversymedia
    / traversymedia
  • НаукаНаука

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

  • @techdave99
    @techdave99 6 лет назад +52

    Edge 17 (in the april windows 10 update) has service workers. In Edge 16, workers are installed by enabling the 'Enable Services Workers' flag.

    • @TraversyMedia
      @TraversyMedia  6 лет назад +4

      techdave99 awesome, thank you for clarifying that

    • @manojsinghrawat6069
      @manojsinghrawat6069 3 года назад

      @Reynaldo that's a work of notification , why would it show same notification again and again

  • @ThiagoVieira91
    @ThiagoVieira91 6 лет назад +17

    ZOMG! I was in need of this tutorial for a college class. You saved me, Brad! ✊

    • @TraversyMedia
      @TraversyMedia  6 лет назад +13

      That's awesome they are actually doing this stuff in college. I say that because from what I have seen it is a lot of older and theory based technology

    • @patrickRotmg
      @patrickRotmg 6 лет назад +5

      In my college, they teach Node.js, Angular, Gulp, and stuff like that! Just in the beginning it was Java

  • @stephh4392
    @stephh4392 6 лет назад +11

    I love this kind of video, more full-stack, more back end web, excellent!!!Thank u Brad!

  • @superasn
    @superasn 5 лет назад +1

    This is the best most complete video tutorials on web notifications!

  • @alanthinks
    @alanthinks 6 лет назад +1

    Greetings from Miami! I have a Start-Up Culture Channel and I'm also a Developer.. LEARNING A LOT FROM YOU T! THANK YOU!

  • @billsb5873
    @billsb5873 6 лет назад +2

    I'm struggling with notifications for a week or so.. specifically with firebase cloud messaging/react. I would love to see your next videos on pwa's or specifically firebase cloud messaging. I found documentation to be a bit confusing. Thank you for this video on node/vapid. It was really useful.

  • @saurabhkashyap7577
    @saurabhkashyap7577 6 лет назад +2

    Thank you I am waiting for push notification basic video from you , this video clear my all basic doubts. And please release soon your PWA crash course. Hope we really enjoy that series’s of video , and thank you man

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

    Another gem from traversy. On an abstruse subject made simple

  • @sagarmaheshwary3150
    @sagarmaheshwary3150 6 лет назад +6

    That really helped. You should do tutorial on pwa for beginners.

  • @boscocorrea1895
    @boscocorrea1895 6 лет назад +36

    Please...! do a pwa tutorials

  • @akshitdandyan192
    @akshitdandyan192 3 года назад

    Thanks Traversy Media, I will be using it in my MERN app

  • @PandemicGameplay
    @PandemicGameplay 6 лет назад +1

    It;s good to do videos on things that do not rely on external libraries. Security vulnerabilities are becoming very high for many third party libraries and often times they aren't even really needed.

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

    thank you very much I've been looking for this for a very long time

  • @eugenemusebe4963
    @eugenemusebe4963 6 лет назад

    This came at the correct time. You are amazing Brad

  • @jdalzate7390
    @jdalzate7390 6 лет назад +6

    Great Video Brad. I would love a video showing us how to translate our Web page language.

  • @tareqdevdiary
    @tareqdevdiary 5 лет назад +1

    I'm gonna use it for one of my university project, thank you sir!

  • @juan193
    @juan193 6 лет назад +1

    Hey man! Been following your videos for a while and i've gotta say you're one of the best teachers out there! You've helped me a bunch! I got a question: Would you consider doing a nativescript/typescript/any DB and API tech? Again, many thanks!

  • @kennymoreno5735
    @kennymoreno5735 6 лет назад

    I have just became a Patreon supporter thank you very much Brad.

  • @annez8598
    @annez8598 6 лет назад

    Many thanks! Look forward to your service worker crash course and many others!

  • @Ibanezyt
    @Ibanezyt 6 лет назад +1

    Greetings from Cape Town. Awesome tutorial, appreciate it! Thanks

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

    Thanks! This is just what I was looking for. Nicely explained.

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

    very nice and simple frame for web push worker. Thanks a lot - I'm going to repeat on my project)

  • @snehpanchal533
    @snehpanchal533 5 лет назад

    superbly explained man , superb.

  • @nishanthbhat
    @nishanthbhat 6 лет назад +4

    Thank you Brad! Your always bring something new out of the box. I really enjoy your videos. Learning lot from them. Keep bringing such quality stuff 👍. Once again thank you. 😊

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

    Nice tutorial. But does it require the user to have the web page active to see this?? Can we do it when the user is not even in the browser?? Thanks

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

    Great, as usual.....Sir Brad Traversy...

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

    no matter the coding is
    server is most crucial computer in the world it handles the most users specially on the cloud

  • @ramganesh1814
    @ramganesh1814 5 лет назад +1

    This is a great video. Thanks for that. You explained everything great.

  • @slyrockyballboa
    @slyrockyballboa 3 года назад +1

    Great video! Thanks
    Push notification recived only if you refresh browser, how to achive without browser refresh?

  • @hemantdubey313
    @hemantdubey313 6 лет назад

    You are one of my biggest inspiration.

  • @dwijvirani7919
    @dwijvirani7919 3 года назад

    Great work and very well exlpained. Keep it up

  • @ColdStoneBoy
    @ColdStoneBoy 4 года назад

    Great tutorial, easy to understand, thx!

  • @mohammadakbar32
    @mohammadakbar32 6 лет назад +3

    thanks Brad! amazing content as always! essential topic.
    God bless you.

  • @vlaaristil5738
    @vlaaristil5738 4 года назад

    This push thing is so interesting. I had no idea I could squeeze out extra revenue from the same amount of traffic by simply adding push monetization to my sites. Currently I use MonadPlug, works great with AdSense.

  • @wwhill8033
    @wwhill8033 6 лет назад

    You provide fantastic videos, thanks!

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

    you’re a life saver, thanks a lot

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

    Awsome Brad! You are my fav 👌 how can i impliment this push notification for a specific user?

  • @LouisNelZA
    @LouisNelZA 5 лет назад

    This was really interesting and well executed. Subscribed!

    • @TraversyMedia
      @TraversyMedia  5 лет назад

      Thanks man

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

      Why is does not work on safari ?

    • @sumanboi
      @sumanboi 3 года назад

      @@TraversyMedia hey can i use this to send notifications even when the browser is closed...i mean running in the background

  • @raptordev2235
    @raptordev2235 6 лет назад

    Thanks Brad this is very helpful

  • @ibraheemalsaady3216
    @ibraheemalsaady3216 6 лет назад

    Hey Brad, big fan, great video.
    One question, if I want to push to the subscription from another endpoint/API, should I save the subscription into something like Redis or any kind of store?

  • @doniyority
    @doniyority 5 лет назад +9

    Dear Brad, can you tell me how i can make notification to react native app using node js?

  • @anishpr5658
    @anishpr5658 6 лет назад

    Your tutorials are amazing :)

  • @hionut2718
    @hionut2718 6 лет назад

    Awesome content! Do you know other cool channels like this?

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

    DOMException: Registration failed - no Service Worker, Getting this Error, while creating subscription object, anyone help me please

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

      Change to navigator.serviceWorker.register('./worker.js', {
      scope: '/'
      });

  • @faradniftaly8893
    @faradniftaly8893 4 года назад

    This is awesome, keep up the good work, thx

  • @tonniewhiteley2497
    @tonniewhiteley2497 6 лет назад

    Love your videos , as always :) thanks for your help ))

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

    This is really simple and cool, thanks a lot! One question thjough: I tried to modify the code to get notifications every 5 seconds by putting the webpush inside a setInterval... But the browser gets only one notification only. Would that even be possible?

  • @БогданЮрчук-т8о
    @БогданЮрчук-т8о 6 лет назад

    Brad, you make good videos. Thanks)

  • @maksimmamrikov3818
    @maksimmamrikov3818 4 года назад +1

    Great video tutorial. I'm wondering why you decided to use the `web-push` library instead of the native `push api`? Also, what was your reason for building it on the server, instead of using the Notification API and building the functionality in the client?

    • @swattertroops-yaaa
      @swattertroops-yaaa 2 года назад

      the server can decide what time to send any notification to any or many users

  • @BarakaMahili
    @BarakaMahili 6 лет назад

    This is dope Brad...thanks a bunch. How would you schedule for that push notification to be sent to your users... let's say every 90 days...(or every 2 minutes for testing purposes) even if they don't have your webpage opened? Thanks

  • @TimurCatakli
    @TimurCatakli 6 лет назад

    Thanks, very nicely explained...

  • @tuancharlie1
    @tuancharlie1 4 года назад +1

    great impression of Woody Harrelson bro

  • @ghanimalmarzouqi3277
    @ghanimalmarzouqi3277 6 лет назад +3

    Thanks for the tutorial Brad. I'm just wondering if I can use this approach to show a notification in a mobile app. Say for example, a react native app or an android app.
    I need to learn more about Service Workers since they are new to me.
    Thanks again, greetings from Oman.

    • @compeng2013
      @compeng2013 5 лет назад

      Did you ever get this figured out? I'm also trying to figure out if this would work with a React Native app

    • @RNMERIA
      @RNMERIA 5 лет назад

      yes plz. can anyone point to a tutorial to do push notifications with FCM for react native ,android in a node app

  • @MegaObka
    @MegaObka 6 лет назад

    hey Brad
    why i love you and your video ? you are best

  • @vloggingkid4690
    @vloggingkid4690 6 лет назад +1

    Great video man👍keep it up

  • @reubenjosephcabrera8179
    @reubenjosephcabrera8179 6 лет назад +8

    do a pwa tutorial. thank you traversy

    • @TraversyMedia
      @TraversyMedia  6 лет назад +4

      I plan on it, one of the things I am in the process of learning enough to teach :)

  • @siddharathadhumale3683
    @siddharathadhumale3683 4 года назад

    Very good explanation :)

  • @hazemhamada1436
    @hazemhamada1436 3 года назад

    one of the best tutorials

  • @self_motivation_official
    @self_motivation_official 3 года назад

    thank u so much ! have a good day

  • @alejandronahuelalaniz2793
    @alejandronahuelalaniz2793 5 лет назад

    excellent video, it's works for me!

  • @DaveTradeFx_01
    @DaveTradeFx_01 4 года назад

    That’s a good video, clear explanation and easy to understand…
    May I ask you, if I want to create a form input and send push notification to specific user, so what is the way or logic for the implementation with MERN stack, include redux as well? And one more thing, if we have multiple notification, do we create multiple custom-sw.js, right?
    Please give me some explanation and advice, appreciate your help :)

  • @bradbyrne3412
    @bradbyrne3412 3 года назад

    Very Nice Thanks !!!! owe you a tip ... as soon as I can

  • @mrmupfukudzwa4374
    @mrmupfukudzwa4374 6 лет назад

    Great tutorials as always

  • @amirnoorani5017
    @amirnoorani5017 4 года назад

    You are simply the best!

  • @24mjohnson
    @24mjohnson 2 года назад +2

    So how or where can you implement something that queries a database for specific tasks based on the user of that computer thats assigned to him in a database that is due at that time? Basically wanna have each person in a company that can run it and it runs every so many seconds or minutes and queries a database of whatever kind for tasks assigned to that user only and sends notification saying "you have X number of takss due at this time"?

  • @Teedeewhyy
    @Teedeewhyy 6 лет назад

    Bit late to the party, but could you please consider doing a video on how to actually send push notifications. For example, how to subscribe the user to a particular endpoint and post notifications to that endpoint/suggest a model for the system. I'm really struggling. Thanks.

  • @nulI_dev
    @nulI_dev 6 лет назад

    nice vid, would love to see an advanced wordpress udemy course

  • @konstantinkozokar7587
    @konstantinkozokar7587 3 года назад

    Perfect video, I have one issue, push notifications doesnt appear on Android devices

  • @jeremyc92
    @jeremyc92 6 лет назад +1

    I couldn't get it to display the notification, but in the Service Workers section of Google Developer Tools I can see where it was received. Any ideas?

  • @jawadhammoud9255
    @jawadhammoud9255 4 года назад

    All ad networks have its pros and cons - concerning the outlook of ad formats, CPC, eCPM etc., and you have to test them in order to see if they work for you or not. At the moment, I use MonadPlug and its results are better than 99% of other ad networks..., and I would not know that if I did not test their network. Simple.

  • @chome4
    @chome4 4 года назад +1

    How can you notify about a change to a specific website's content?

  • @B0re_d
    @B0re_d 6 лет назад

    Hi Traversy I'd like to know if you have some tips for beggining front-end developers basically I'm familiar with HTML5, CSS3 with all those transitions transformations etc and media queries, JS. What are some good excersises to progress in skill and make it let's say "easier" to build simple responsive websites eg one page layouts. I'm about to learn bootstrap and .Net but I still feel like a newbie lost in all that stuff. What would you suggest doing if you were me? Thanks for all the tutorials on this channel they helped me progress a lot. Keep up the good work!

  • @justnow7263
    @justnow7263 3 года назад

    Brad can answer this question.
    I want to use this a website and then I will convert mobile app , can still work when is mobile or desktop.?
    Thanks

  • @max-rm1sk
    @max-rm1sk 6 лет назад +1

    I wonder whether you can do the same thing for mobile app, android in specific?

  • @satyajeetkumarjha1482
    @satyajeetkumarjha1482 6 лет назад +1

    Hey Brad .
    Will you come up with a react project based course ? I am learning from your mern stack course but I am looking for some project based react course to get a better understanding of framework.

    • @TraversyMedia
      @TraversyMedia  6 лет назад +2

      satyajeet kumar jha about 85% sure that will be my next course

    • @satyajeetkumarjha1482
      @satyajeetkumarjha1482 6 лет назад +1

      Traversy Media I will buy it the day u put it on udemy

  • @K8Tech
    @K8Tech 6 лет назад

    Backend 😍.. thanks brad

  • @jegans3250
    @jegans3250 3 года назад

    You really did it..🥰,
    Kindly update how can i send dynamic data in push notifications, in other server react js build🥺 please me

  • @jamalabdullahi8155
    @jamalabdullahi8155 6 лет назад +2

    Thanks my lecturer 👨‍🏫 I like you the most
    I request to go for deep service worker and caching the pages

    • @TraversyMedia
      @TraversyMedia  6 лет назад +1

      Something i am definitely planning. I am in the process of digging into PWA

    • @jamalabdullahi8155
      @jamalabdullahi8155 6 лет назад +1

      Many many thanks sir 🙏🏽🙏🏽🙏🏽🙏🏽🙏🏽🙏🏽👋👌🏽👏🏼

  • @daniellaerachannel
    @daniellaerachannel 6 лет назад

    awesome Brad!

  • @bizzle98
    @bizzle98 6 лет назад

    Please... please do a playlist on creating a responsive wordpress theme *NOT A BUSINESS THEME* because that's all that's out there on youtube. Was hoping for a how to create a Newspaper magazine or a editorial/news theme from *SCRATCH* all tutorials out there are not actually coding it

  • @shhaidary7449
    @shhaidary7449 5 лет назад

    Very nice... how can we use this on wordpress site... if you please suggest

  • @Junyoung_Kang
    @Junyoung_Kang 5 лет назад +1

    What... I am lost. I don't see any notification... ?

  • @petecapecod
    @petecapecod 6 лет назад

    Edge and also Safari both just added service workers. So all major browsers now support them 👍😎

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

      You are talking about the version which will be on the next year?

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

      Please, help me it is not working for me

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

      This video was a couple years ago, you should have access to service workers in all major browsers.
      Sorry it's not working for you.

  • @alessandroamedei810
    @alessandroamedei810 4 года назад +1

    Thank you so much for the tutorial! I have a question, in this tutorial you subscribe to the server push notification system and you immediatly get a notification back: how can i subscribe the client, but send to him the notification throught another api call?

    • @mayank_upadhyay_19
      @mayank_upadhyay_19 4 года назад +1

      I am also newbie, but I guess we need to save that subscription in database to send it notifications in the future.

  • @imaginarynoise
    @imaginarynoise 6 лет назад

    Gettin' progressive up in here! Excellent choice!

  • @ruhitaj4914
    @ruhitaj4914 6 лет назад

    Hai sir
    Thanks for the detailed info.
    How do we add /subscribe, how does it know it has to be taken

  • @SethuSenthil
    @SethuSenthil 6 лет назад

    This is a dream come true!

  • @manushivammaheshwari946
    @manushivammaheshwari946 3 года назад

    Notification is not popped up in my browser Chrome, in MacBook pro M1 chip. Even though I have active the notifications to allow and also have not set Do Not Disturb, Can you help me with this?

  • @malikgenius4u
    @malikgenius4u 6 лет назад

    i am a big fan of brad`s Udemy courses, one Suggestion, can we have one complete MERN course with Multer images / videos upload, service worker, push notification, nodemailer emails verification on users registration, new post alerts etc, i mean everything Brads have on youtube regarding Node.js and react in one complete course.. Please consider it for your next udemy course..

    • @TraversyMedia
      @TraversyMedia  6 лет назад +1

      I have to think of timing and what you are talking about is a production level app. It is hard for me to come up with something that in depth in a sufficient amount of time and still be able to feed my family. I could maybe do something like that but it would be on the side of everything else I was doing so it would take a very long time and within that time technologies update and things would go out of date, which is very frustrating :(

    • @malikgenius4u
      @malikgenius4u 6 лет назад

      Traversy Media oh yeah, i got ur point, maybe a second part of front to back mern can have those in seperate udemy course, where you start from where on top of existing project, really nobody want to see you doing it from scratch but an updater course of MERN, where all of us can subscribe to it as new course. just a thought...

  • @MrPhiineasKK
    @MrPhiineasKK 3 года назад

    I have one question, was it supposed to work in mobile Chrome? I did the steps and I can see the notification in desktop but when I tried in chrome mobile it doesn't show :(

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

    How would we do this without needing the user to fetch. For example with a cron job?

  • @michelbouchet3605
    @michelbouchet3605 6 лет назад

    I followed your nice video tutorial and thanks to it have now something working locally.
    I would like to go for the next step and make something working on the server (for example on Heroku). Do you have any tip for that?

  • @ajaybendre8980
    @ajaybendre8980 4 года назад

    I have setted up Web push to my vue js and express app and getting notifications. But only on computers and not mobile devices what should i do. Any help is appreciated.

  • @babayaga4329
    @babayaga4329 4 года назад

    Thank you for putting all the shit togather. I read docs but someone would miss one thing on another or someone would just godamn GCM in it and confuse the shit out of it.

  • @carrillocarlosce
    @carrillocarlosce 6 лет назад +8

    Thanks traversy

  • @geek4001
    @geek4001 6 лет назад

    Thanks brad.
    Brad, can you do a agenda, mongodb task job shefuler tutorial?

  • @unsolvedrubiks8644
    @unsolvedrubiks8644 6 лет назад

    I'm trying to wrap my head around things.. How do we specify which user to push to?

  • @kennymoreno5735
    @kennymoreno5735 6 лет назад

    Thank you very much for these Tutorials, I would to know what are your thoughts regarding Web Assembly & AMP (accelerated Mobile Pages) it seems Google is pushing those techs for the future the same goes with the Flutter SDK - Thanks mate!.

  • @yoyobu1666
    @yoyobu1666 4 года назад

    why do we need to set webpush.setVapidDetails ? And what mail do I need to put. My website mail, personnal mail?

  • @michelbouchet3605
    @michelbouchet3605 6 лет назад

    This tutorial is very interesting, but is there a way to get the code without having to retype it?