What Theo Won't Tell You About Next.js

Музыка

Next.js is a full stack framework. So you definitely can put your backend in Next.js.
But should you? Let's figure that out.
Theo on KZread - / theobrowne1017
Tweet that inspired this video - / 1580621415891419136
Follow me on Twitter - / dadevil99

Пікірлер: 244

  • @t3dotgg
    @t3dotgg Жыл бұрын

    I approve this message I think

  • @tapank415

    @tapank415

    Жыл бұрын

    Haha yes! quick question would t3 suck for backend heavy applications too?

  • @iuc7254

    @iuc7254

    Жыл бұрын

    Why the fuck is this comment 12 hrs before the main video

  • @jww0007

    @jww0007

    Жыл бұрын

    @@tapank415 definitely

  • @jww0007

    @jww0007

    Жыл бұрын

    @@iuc7254 probably private release

  • @JLarky

    @JLarky

    Жыл бұрын

    I don’t agree with this message 😂

  • @_sjoe
    @_sjoe Жыл бұрын

    I love what's starting to happen on YT with all of these serious discussions about dev. Love seeing different perspectives, because we all learn from it. Fucking banger content, thank you.

  • @jww0007

    @jww0007

    Жыл бұрын

    Ryan Carniatos channel

  • @wlockuz4467
    @wlockuz4467 Жыл бұрын

    "ISR whatever that is, I am too dumb to figure that out" Thats too relatable

  • @kangalio
    @kangalio4 ай бұрын

    This, is FANTASTIC. That model of web project structure is spot on and so versatile, and you seem so sincere/authentic/honest with all your statements. So satisfying to watch

  • @aldomeza-dev
    @aldomeza-dev Жыл бұрын

    Absolutely brilliant content, keep up the good work! 🙌🏻

  • @codewithguillaume
    @codewithguillaume Жыл бұрын

    My friend this is an amazing video. Nextjs is growing up so much! Thanks to Theo also.

  • @thedigitalceo
    @thedigitalceo Жыл бұрын

    Sounds like a real backend developer busted some myths. However I think for us that use NextJS heavily we’re not full fledged backend devs. We’re mostly front end, need reliance on server side rendering of react components while needing a few backend API calls.

  • @Beny123
    @Beny123 Жыл бұрын

    Great content . Goes to show how thoroughly we need to think before developing software .

  • @SuperMBARutgers2013
    @SuperMBARutgers2013 Жыл бұрын

    One of my favorite videos already

  • @ammaraateeb1914
    @ammaraateeb1914 Жыл бұрын

    Makes sense. I just finished working on a organisations finance and management project. Even though Next has a clean and robust workflow for the front end but alot of the backend implementations required a dedicated backend framework. For example run cron schedule jobs (generate automated reports on daily, weekly, fortnightly mornth quarterly and yearly bases). Mailing service so send out alerts, reminders and warnings, server health checks, file system related tasks , db service layering (caching, index metering and optimisation) etc. These things could have some how been managed with next but would have absolutely been inefficient and not very flexible.

  • @rickr937
    @rickr937 Жыл бұрын

    Wow, what a great explanation of all the components of an app. Please more of these :)

  • @fahimmuntasirniloy
    @fahimmuntasirniloy Жыл бұрын

    Immediately subscribed, very clear concepts 💯

  • @sockeyes51
    @sockeyes51 Жыл бұрын

    This was good. I hadn’t put that much thought into backend from NextJS vs other platforms. My apps have been more simplistic applications that do more front end work so NextJS has worked pretty well for me. But if I was doing something that didn’t have front end in there I wouldn’t be using NextJS but doing something else that handles just back end and handles it very well. This was good, thanks for sharing this. :D

  • @arkngelus
    @arkngelus Жыл бұрын

    Not sure why you would need to constraint yourself to nextjs in this case for backend if it's limiting your project. Just create the Frontend in nextjs and use what ever you want as backend (rails, nest, python, java, c#) it doens't matter for example: there are a lot of AI tools in python why would you need to force it in JS (nextjs), use flask or any other BE available and consume that service from the FE.

  • @ebrelus7687

    @ebrelus7687

    Жыл бұрын

    To learn one thing best not few things worse than best. Why can't we have one thing good at everything or two things perfectly aligning with each other with a similar way of coding & thinking about code?

  • @xxapoloxx

    @xxapoloxx

    6 ай бұрын

    @@ebrelus7687 This is a recipie for planned obsolecense, yours.

  • @shimadabr

    @shimadabr

    Ай бұрын

    ​@@ebrelus7687Because it's impossible. Each language and ecosystem has it's strengths and weaknesses. If the project has a usecase that some language/ecosystem would fit very well, it doesn't make sense to reinvent the wheel, because 1. you and your team will probably not solve the problem as well as the libraries that inspired you 2. you can't afford the time investment 3. Even if you aim to use some 3rd party library, very often that library is not as well maintained and documented as the one from the language you refused to use and 4. it's very common that through the development you or you team realizes the project demands a lot more stuff than anticipated that the other language/ecosystem solves much more easily, now you are stuck with points 1-3.

  • @baohuynh744
    @baohuynh744 Жыл бұрын

    Awesome lessons with great visual example that really helps with following the content. You put what I have been thinking about in such great wording and figures. Nextjs is good if you have a simple backend to support the main thing that is your frontend, but if complexity is in the equation, you are better off using more dedicated tools. Nextjs is full-stack yes/maybe, but an unbalanced full-stack, like how Django focuses more on the backend, and only gives limited frontend options through templating

  • @tapank415

    @tapank415

    Жыл бұрын

    Ya, But there's DRF & Fastapi also, which you utilize if you want to work with js frontend.

  • @al3030
    @al3030 Жыл бұрын

    Makes sense! Good visuals and insightful content

  • @andre-le-bone-aparte
    @andre-le-bone-aparte Жыл бұрын

    Just found your channel. Excellent Content - Another sub for you!

  • @EldorJ10
    @EldorJ10 Жыл бұрын

    This is great, I really learned something from this video.

  • @Sanjay-hz2rz
    @Sanjay-hz2rz Жыл бұрын

    Hey mate, that was a great video, but could you please clarify on the mental model for the stateful early return with other side effects being processed after

  • @foreach1
    @foreach1 Жыл бұрын

    Good point. What I do is that i don’t deploy on vercel (since lambda stop after responding) but I deploy on google appengine instead. I wrote many “fire and forget” functions. That’s not ideal but that’s the price I’m willing to pay for using the amazing t3-stack lol

  • @SXsoft99
    @SXsoft99 Жыл бұрын

    There is something to add about fullstack developers They either write a monolith app backend + frontend or they write 2 apps, 1 backend api and client app( that can also be a mobile app)

  • @RaldinCasidar

    @RaldinCasidar

    Жыл бұрын

    I am the second one lol

  • @DoctorSoulis

    @DoctorSoulis

    Жыл бұрын

    @@RaldinCasidar Platform?

  • @RaldinCasidar

    @RaldinCasidar

    Жыл бұрын

    @@DoctorSoulis Depends on my clients. Somethimes I use PHP Backend API and VueJS for FrontEnd. Sometimes NodeJS Backend API and VueJS FrontEnd. Sometimes my frontend is an mobile app.

  • @ychinamale

    @ychinamale

    11 ай бұрын

    ​@@RaldinCasidarWhat factors usually push you towards PHP instead of Node JS? And what factors send you the other way? Asking because I'm actually in a situation where I need to pick between PHP and Node JS for a project.

  • @RaldinCasidar

    @RaldinCasidar

    11 ай бұрын

    @@ychinamale the factors that tells me which language to pick is the hosting, traffic and complexity of the project. I prefer NodeJS when I want to ship a serverless backend application that is not very complex and have and a project that I expect to have a large traffic. I use PHP if the project is big and complex, for example, a company's internal operation system. I use Laravel for organizing complex projects.

  • @efkastner
    @efkastner Жыл бұрын

    I like where this was going but it ended abruptly :). I’d love to hear more about the frameworks that are allowing you to do the side effect work ergonomically. In the past, I’ve done one of 3 things: 1. Early on or when it’s likely there will only ever be a few events, use a simple background job / delayed job system (resque, beanstalk, etc) 2. When there is a rich set of transformations or systems concerned with events: a fancy message bus / durable queue (kafka, MySQL magic, etc) 3. My favorite: when you don’t care about delivery guarantees - UDP! (StatsD ;))

  • @buddy.abc123

    @buddy.abc123

    Жыл бұрын

    Any framework that doesn't run on "the edge" is perfectly fine.

  • @JoshDunning
    @JoshDunning4 ай бұрын

    The chopsticks were so out of left field from what I expected 😂 instant subscribe

  • @AxiomaticAssumptions

    @AxiomaticAssumptions

    3 ай бұрын

    i couldnt help but look and laugh at it every now and then, funny shit

  • @atharva1237
    @atharva1237 Жыл бұрын

    Thanks for clearing a bit of confusion

  • @Bernd2023
    @Bernd2023 Жыл бұрын

    Good points! And I watched till the end to see if you eat that sushi or not 😂

  • @lucidmach
    @lucidmach Жыл бұрын

    the best use of chopsticks ever 🔥🤣

  • @quelchx
    @quelchx Жыл бұрын

    Finally. Thank you for this video.

  • @a7zz
    @a7zz Жыл бұрын

    Good vid happy my algorithm recommended you!

  • @karnellschultz6446
    @karnellschultz6446 Жыл бұрын

    Thanks for the video mate

  • @fereydounomar9048
    @fereydounomar90489 ай бұрын

    Thank you for this explanation … what would you recommend for a beginner working on an e-commerce website + mobile app ?

  • @SandraWantsCoke
    @SandraWantsCoke Жыл бұрын

    I agree! It's like using chopsticks instead of a fork and a knife for holding a mic!

  • @devagr

    @devagr

    Жыл бұрын

    Boy you're gonna love my video on microservices

  • @CH-tv1cy
    @CH-tv1cy Жыл бұрын

    For most web apps next js backend is fine. For the application im building it doesnt really work. Its simply easier to do with a custom express server, which is easily integrated with next js. The app im building has a lot of complexity on the backend.

  • @wayne_logan
    @wayne_logan Жыл бұрын

    Next JS 13.4 introduces streamable API responses, much like how the OpenAI API streams data. So, in my very amateur perspective, Next JS's statelessness is no longer a plain and simple wait-till-the-end

  • @niksatan
    @niksatan Жыл бұрын

    Dude, great video, so much knowledge

  • @brettstoddard7947
    @brettstoddard7947 Жыл бұрын

    thank you for recommending Nest -- I'll have to check it out!

  • @lunacraftsdaily

    @lunacraftsdaily

    Жыл бұрын

    I don't want to call it horrible, but in my opinion It's horrible.

  • @taveirinha1337

    @taveirinha1337

    11 ай бұрын

    Nest has its purpose in things like, running scheduled tasks, web scraping, among other things that don't need thousands of users hung up consuming resources. And yes, it will be very useful in these cases, you are not always interested in building the next facebook/instragram, if that was your intention, surely a javascript framework for the backend would not be the best choice. If this answer is incomprehensible, please forgive me, it's a translator tool

  • @vanduirsantana
    @vanduirsantana5 ай бұрын

    As we would say here in Brazil: o maluco é brabo! Excellent content

  • @animeshraj1261
    @animeshraj1261 Жыл бұрын

    numbers on socials don't define one's capabilities, loved the explanation.

  • @adimardev1550
    @adimardev1550 Жыл бұрын

    i really do aggree with this guy. he knows what he is saying and it really make sense. most of theme don't talk like this guy. really helpful video.

  • @dunebuggy1292
    @dunebuggy1292 Жыл бұрын

    This is a great video to break from the myopia that often mires developers; the one great thing they use being the holy grail for all things. I find Theo interesting as a new viewer, I just disagree with his toolbox. For small teams with a natural limit of complexity, it makes sense. As you said, these would typically be environments in which side effects are minimal or predictable. But, quite imaginably, the ability for his preferred stack to scale considerably has obvious flaws.

  • @toshitsingh7270
    @toshitsingh7270 Жыл бұрын

    That was a good explanation 👏

  • @BGivo
    @BGivo Жыл бұрын

    How would one define the differences between business logic and data logic? What are some examples?

  • @spageen
    @spageen4 ай бұрын

    please don't eat the mic

  • @MsBukke
    @MsBukke Жыл бұрын

    I don't use next.js at work, but i do use a stateless backend and to solve the user registration problem i use a message queue, is it a bad idea?

  • @mitotv6376
    @mitotv637610 ай бұрын

    Nice breakdown

  • @sudhanshukushwaha6351
    @sudhanshukushwaha63519 ай бұрын

    I think node js with express is really good for writing the backend for the application where a lot of backend code gonna use.

  • @sadanandasherigara3309
    @sadanandasherigara3309 Жыл бұрын

    I need to buld an application which has lots of backend. What should I use for frontend? create-react-app with express or nestjs?

  • @jiggartala2008
    @jiggartala20087 ай бұрын

    good explanation but very bad background music

  • @TheIndianOutcast
    @TheIndianOutcast6 ай бұрын

    Dude I saw the chopsticks... I know you the guy who knows everything. 😂😂😂

  • @lohitaksha244
    @lohitaksha244 Жыл бұрын

    Wow those chopstick skills 😂

  • @KAREKINFPV
    @KAREKINFPV Жыл бұрын

    This is a great video, what would you recommend for building a backend that can manage users who register on the front end as well as setting user levels on the backend. Currently I'm trying to focus on react only for this, but there doesn't seem to be much information on user levels for front vs back end logins. Thanks so much!

  • @devagr

    @devagr

    Жыл бұрын

    Doesn't sound like a complex backend, Nextjs should be enough Also for users stuff I would recommend checking out clerk.dev, you don't need to build registration and user levels on your own

  • @KAREKINFPV

    @KAREKINFPV

    Жыл бұрын

    @@devagr thats amazing! Thanks for the fast reply my friend!

  • @orlvni
    @orlvni Жыл бұрын

    fair point, theo is a more frontend dev though, so he might not address these kinds of more server apps

  • @yasserhy
    @yasserhy Жыл бұрын

    Can you use NextAuth in NextJS to sign in with Google then pass the session to JestJS to also authorise the user there to be able to use NestJS guards? I can't find any tutorials about this at all

  • @lahcencodery
    @lahcencodery Жыл бұрын

    I assume that applies to svelte kit, nuxt and other metaframeworks

  • @arianitonline8748

    @arianitonline8748

    Жыл бұрын

    I think not really. there are few that allow you to work with backend. like remix js or fresh for denojs. those frameworks sell themselves as full stack frameworks, and when you write the code, they know what is front end and what is backend. but I would always use a dedicated backend framework for the backend and keep things separated

  • @gabriel_mj
    @gabriel_mj Жыл бұрын

    What would be a good example of a backend/business logic heavy application? Like the one at 5:03

  • @devagr

    @devagr

    Жыл бұрын

    If you keep watching a little more, I recommend Nestjs for backend heavy applications.

  • @TheBendixSA

    @TheBendixSA

    10 ай бұрын

    @@devagr Think you misread his question

  • @rboes208
    @rboes20811 ай бұрын

    Yes exactly thank you!

  • @MaheshwaranVelusamy
    @MaheshwaranVelusamy Жыл бұрын

    Nice to know... Thanks mate

  • @Vreth6
    @Vreth6 Жыл бұрын

    I like the video, was waiting for him to put that mic in his mouth the whole time though 😂

  • @13odman
    @13odman Жыл бұрын

    Great visuals

  • @lucidmach
    @lucidmach Жыл бұрын

    nextjs is pretty teriible for any backend system that requires real-time communication (especially websockets)

  • @devagr

    @devagr

    Жыл бұрын

    Yeah but for that you just use a 3rd party service

  • @PapaVikingCodes

    @PapaVikingCodes

    Жыл бұрын

    I love next js in the toolkit, it’s super fast to spin up and intuitive and the ergonomics are amazing. But schedule something, you shall not!!!! Mahahahha.

  • @arivanhouten6343

    @arivanhouten6343

    Жыл бұрын

    We are using nextjs with web sockets that communicate from a service to the nextjs backend and from there to the client. It's terrible but porting now would be difficult. Gotta look more at full stack frameworks.

  • @lunacraftsdaily

    @lunacraftsdaily

    Жыл бұрын

    @@devagr Is there any alternative to nest.js & next.js?

  • @armanamini1450

    @armanamini1450

    5 ай бұрын

    Next.js is pretty terrible for anything

  • @real23lions
    @real23lions Жыл бұрын

    that chopstick caught me off guard. lol

  • @fooked1
    @fooked111 ай бұрын

    I'm not a fan of Next, but I disagree with this argument. Next has an api request handler / router so you can do whatever you want with the incoming request. Where you put your code is your business, and if you want a "side effect" (i.e. background jobs), there's nothing stopping you from using a message queue, using a child process, of just performing a basic async operation. So what's the problem?

  • @sumitwadhwa8823
    @sumitwadhwa882311 ай бұрын

    Honestly if I were starting out on a new small sass project, I wouldn't worry about having a separate backend. I'd just get started.

  • @buddy.abc123
    @buddy.abc123 Жыл бұрын

    Got wrecked when I tried to implement background jobs in Nextjs. I moved back to .Net core.

  • @anton9410

    @anton9410

    Жыл бұрын

    I am new to this concept, would you please elaborate a little on this?

  • @GBlunted
    @GBlunted Жыл бұрын

    I like this... Makes sense to me!

  • @lowzyyy
    @lowzyyy Жыл бұрын

    Thanks for this. I built only 2 small projects in my short dev career and both need heavy backend which is constantly doing something. Express or pure node js was ok solution to this I learned that next js is completely useless for this use case although i tried so hard to make it work. From all that features i only used router lol

  • @inmosh
    @inmosh11 ай бұрын

    But how do you solve this problems with other frameworks like Django? You still call async tasks on request if you need something done in background. You use 3rd party lib like Celery.

  • @Fanaro
    @Fanaro10 ай бұрын

    Nice video, cool implicit explanation of stateful vs stateless APIs. But I think Theo addresses this Next.js problem with the tRPC part of his stack, doesn't he?

  • @himesh_89
    @himesh_89 Жыл бұрын

    Great, watch. i like the background music..!! Can you share the link?

  • @ZiaCodes
    @ZiaCodes Жыл бұрын

    Can you tell me how to upload nextJS App to our own node server? not vercel or any other third-party. because I added but I got issues...

  • @runonce
    @runonce Жыл бұрын

    I don't see the problem on running async tasks without awaiting them on getServerSideProps and such 🤔

  • @sixtyfivewatts65
    @sixtyfivewatts659 ай бұрын

    good video please finish the question . what is the best solution then , i know you said Nest but i want more answer to solve the problem .

  • @d3vilm4ster
    @d3vilm4ster10 ай бұрын

    I love the way you explained the topic! Suscribes!

  • @dontignore5567
    @dontignore5567Ай бұрын

    chopsticks se mic pakarta hu, Kool laguga T ki jagah pe TH bolta hu, Accent jhad ke Extra Cool laguga

  • @kroucher3286
    @kroucher3286 Жыл бұрын

    Subbed for the damn chopsticks 😂

  • @vishalsinghpanwar2972
    @vishalsinghpanwar297211 ай бұрын

    nextjs and spring boot have saimilar syntax..........any idea which is better?

  • @heroe1486
    @heroe1486 Жыл бұрын

    Currently using Django+DRF and Next but planing to go full NextJS for productivity and type safety ... couldn't one just reproduce what is doable with a regular express server but with NextJS API routes ? What's the limiting factor here ? API routes being deployed as serverless lambda functions ? Couldn't one just not deploy on Vercel and thus have a stateful backend ?

  • @devagr

    @devagr

    Жыл бұрын

    The main point was not just about Serverless functions, but also about how much the framework helps you when dealing with complex logic. Even a regular express server is not enough on its own when you are have a lot of stuff because express ONLY gives you http capabilities. If you just use express or next when writing complex backends you will basically end up recreating a lot of the patterns that frameworks like Nest provide out of the box.

  • @cpc4466

    @cpc4466

    Жыл бұрын

    @@devagr that's my exact concern even custom express server with nextjs won't be enough , if backend grows in complexity. What could be the limiting of using express even though you can work around many things with a wrapper ?

  • @wraithwinterly
    @wraithwinterly Жыл бұрын

    What is the background music called?

  • @PapaVikingCodes
    @PapaVikingCodes Жыл бұрын

    Looooool your going places my dev friend

  • @jason_v12345
    @jason_v12345 Жыл бұрын

    You absolutely can perform side effects without the end user having to wait. Just leave the await keyword out of the statement that initiates the side effects and synchronously call res.end().

  • @texoport
    @texoport Жыл бұрын

    I just use React with Vite and Express on the backend and tRPC as the glue. I serve my frontend through Firebase hosting (no real reason) and it works alright. I used Nest before, especially because I thought its' abstractions over job queues and that sort of thing would help, but it felt very limiting. I spent a weekend porting my platform to Next, just for the heck of it, and it unfortunately made things a lot worse on the backend side of things.

  • @nadavlev4534

    @nadavlev4534

    Жыл бұрын

    What limitations did you encounter with nest?

  • @uziboozy4540

    @uziboozy4540

    Жыл бұрын

    I'd suggest having a look at Deepkit RPC

  • @zqzz2666

    @zqzz2666

    Жыл бұрын

    What use cases of RPC? and when do you need it?

  • @SuperMBARutgers2013
    @SuperMBARutgers2013 Жыл бұрын

    Could you please explore more combination and the kinds of apps that would glow pink

  • @devagr

    @devagr

    Жыл бұрын

    Here twitter.com/dadevil99/status/1583474036142579712

  • @smarthu4617
    @smarthu4617 Жыл бұрын

    plz anyone tell i am working on project so using nextjs as frontend and seperate express and mongodb in backend good practice, that is not using nextjs api. All backend done in seperate file.

  • @buddy.abc123
    @buddy.abc123 Жыл бұрын

    Subscribed

  • @CyberAnalyzer
    @CyberAnalyzer Жыл бұрын

    How does the microphone taste?

  • @FabrizioMarmitt
    @FabrizioMarmitt6 ай бұрын

    for me, the server your right for a web application is part of frontend. I would say next is a fullstack WEB framework. backend is something else that goes beyond web

  • @Dext-err
    @Dext-err9 ай бұрын

    So? Any alternatives

  • @adisonmasih
    @adisonmasih Жыл бұрын

    I Can totally trust a guy who holds his mic in chopsticks.

  • @Brunoenribeiro
    @Brunoenribeiro Жыл бұрын

    nice take

  • @BlurryBit
    @BlurryBit Жыл бұрын

    omg chopstick mic!! Approved!

  • @yadullahkurt2189
    @yadullahkurt2189 Жыл бұрын

    thanks sensei

  • @yadullahkurt2189

    @yadullahkurt2189

    Жыл бұрын

    Which technology should I choose for the back end with React? MERN stack is good?

  • @blue_name_warrior
    @blue_name_warrior3 ай бұрын

    You can just use single side of chopsticks! You fooled us!

  • @sujezz
    @sujezz Жыл бұрын

    This is actually useful information. This should be talked about way more instead of blindly promoting false solutions. Frontend frameworks are not backend nor fullstack.

  • @nicolasanderson5881
    @nicolasanderson58819 ай бұрын

    I saw this video and subscribed this

  • @sparkmediax9705
    @sparkmediax97057 ай бұрын

    I am only going to use nextjs for frontend and use their server side rendering for simple marketing home page. The core API surely would be written in expresjs on Nodejs runtime. I am not interested in nextjs backend.

  • @netsaosa4973
    @netsaosa4973 Жыл бұрын

    i have an express app hosted on vercel without using nextjs. It gives me cors errors and 429s out of nowhere on some days. Also websockets require extra setup as well. I had an easier time using ec2. Nice chopsticks btw

  • @Mobilemaniaplays
    @Mobilemaniaplays11 ай бұрын

    Bro can I work with you, I can do frontend part and I am currently learning backend part

  • @devagr

    @devagr

    11 ай бұрын

    dm me on twitter @devagrawal09

  • @Vampion
    @Vampion8 ай бұрын

    please eat it bro, it is waiting for too long (chopstick food)

  • @santhoshkumarrajkumar6220
    @santhoshkumarrajkumar6220 Жыл бұрын

    Next.js did not work for my project.

  • @ziat1988
    @ziat1988 Жыл бұрын

    What if the combination for example Nextjs for frontend and other framework by Java, php, python... for backend. Do you think this works?

  • @arianitonline8748

    @arianitonline8748

    Жыл бұрын

    of course it works. that's actually the way how to do it

  • @shubhamdhingra6089

    @shubhamdhingra6089

    Жыл бұрын

    Why not? Definitely.

  • @jason_v12345
    @jason_v12345 Жыл бұрын

    Also, the email example is not a good one. I would argue that you SHOULD make the user wait in that case but define a timeout, and if the timeout expires, inform the client that the registration was successful but the email may have failed and that they should request a new one to be sent.