TomDoesTech
TomDoesTech
  • 185
  • 2 578 942
Use This to 10x Your Portfolio Projects
🌎 Follow me here:
Discord: discord.gg/4ae2Esm6P7
Twitter: tomdoes_tech
Facebook: tomdoestech​
Instagram: tomdoestech​
TikTok: www.tiktok.com/@tomdoes_tech
☕ Buy me a coffee: www.buymeacoffee.com/tomn
zhlédnutí: 764

Video

Why I'm Using This One Library for Server Actions in Next.js
zhlédnutí 988Před 21 dnem
🌎 Follow me here: Discord: discord.gg/4ae2Esm6P7 Twitter: tomdoes_tech Facebook: tomdoestech​ Instagram: tomdoestech​ TikTok: www.tiktok.com/@tomdoes_tech ☕ Buy me a coffee: www.buymeacoffee.com/tomn
How I Would Build a Software System for Scale
zhlédnutí 4,7KPřed 21 dnem
🌎 Follow me here: Discord: discord.gg/4ae2Esm6P7 Twitter: tomdoes_tech Facebook: tomdoestech​ Instagram: tomdoestech​ TikTok: www.tiktok.com/@tomdoes_tech ☕ Buy me a coffee: www.buymeacoffee.com/tomn
How I Built a Marketplace with Stripe Connect
zhlédnutí 937Před 28 dny
Repoz.io: repoz.io/ Stripe connect doccumentaiton: docs.stripe.com/connect 🌎 Follow me here: Discord: discord.gg/4ae2Esm6P7 Twitter: tomdoes_tech Facebook: tomdoestech​ Instagram: tomdoestech​ TikTok: www.tiktok.com/@tomdoes_tech ☕ Buy me a coffee: www.buymeacoffee.com/tomn
How I Brute Forced My Way Into Becoming a Software Engineer
zhlédnutí 1KPřed měsícem
🌎 Follow me here: Discord: discord.gg/4ae2Esm6P7 Twitter: tomdoes_tech Facebook: tomdoestech​ Instagram: tomdoestech​ TikTok: www.tiktok.com/@tomdoes_tech ☕ Buy me a coffee: www.buymeacoffee.com/tomn
The Easiest Way to Test Your Applications With a Real Database
zhlédnutí 834Před měsícem
🌎 Follow me here: Discord: discord.gg/4ae2Esm6P7 Twitter: tomdoes_tech Facebook: tomdoestech​ Instagram: tomdoestech​ TikTok: www.tiktok.com/@tomdoes_tech ☕ Buy me a coffee: www.buymeacoffee.com/tomn
How I Upload Images to CloudFlare R2 in Next.js Server Components (Presigned PUT)
zhlédnutí 2KPřed měsícem
repoz.io: www.repoz.io 🌎 Follow me here: Discord: discord.gg/4ae2Esm6P7 Twitter: tomdoes_tech Facebook: tomdoestech​ Instagram: tomdoestech​ TikTok: www.tiktok.com/@tomdoes_tech ☕ Buy me a coffee: www.buymeacoffee.com/tomn
Learn Redis in 40 Minutes - Upstash Redis
zhlédnutí 4,3KPřed 4 měsíci
Learn Redis in 40 Minutes - Upstash Redis
How I Structure my Go Applications for Scale
zhlédnutí 1,8KPřed 4 měsíci
How I Structure my Go Applications for Scale
A Practical Guide to Pointers in Go
zhlédnutí 1,9KPřed 5 měsíci
A Practical Guide to Pointers in Go
Introducing The GoTTH Stack - Go, Tailwind CSS, Templ & HTMX
zhlédnutí 27KPřed 5 měsíci
Introducing The GoTTH Stack - Go, Tailwind CSS, Templ & HTMX
How To Get Ahead of 99% Of Developers
zhlédnutí 5KPřed 6 měsíci
How To Get Ahead of 99% Of Developers
Go For TypeScript Developers - Use Your TypeScript Skills to Learn Go
zhlédnutí 6KPřed 6 měsíci
Go For TypeScript Developers - Use Your TypeScript Skills to Learn Go
How I Think About Automated Software Testing
zhlédnutí 1,4KPřed 9 měsíci
How I Think About Automated Software Testing
Build & Deploy a Realtime App that Scales with Upstash Redis, Next.js & Fastify
zhlédnutí 16KPřed 11 měsíci
Build & Deploy a Realtime App that Scales with Upstash Redis, Next.js & Fastify
What Does Senior Developer Use to Build Side Projects?
zhlédnutí 4,3KPřed 11 měsíci
What Does Senior Developer Use to Build Side Projects?
Building Large Scale Microservice Applications
zhlédnutí 14KPřed rokem
Building Large Scale Microservice Applications
This Impossible Interview Question is Actually Easy
zhlédnutí 2,5KPřed rokem
This Impossible Interview Question is Actually Easy
Build & Deploy a Next.js Project with Neon & Vercel
zhlédnutí 4,9KPřed rokem
Build & Deploy a Next.js Project with Neon & Vercel
Stop Making These 5 GraphQL Mistakes
zhlédnutí 2,8KPřed rokem
Stop Making These 5 GraphQL Mistakes
Build a Multi-Tenanted, Role-Based Access Control System
zhlédnutí 33KPřed rokem
Build a Multi-Tenanted, Role-Based Access Control System
Solving ThePrimeagen's Favorite Interview Question
zhlédnutí 5KPřed rokem
Solving ThePrimeagen's Favorite Interview Question
Learn Just Enough Git to be Productive
zhlédnutí 2,4KPřed rokem
Learn Just Enough Git to be Productive
Learn Just Enough Fastify to be Productive
zhlédnutí 20KPřed rokem
Learn Just Enough Fastify to be Productive
Learn Just Enough Zod to be Productive
zhlédnutí 11KPřed rokem
Learn Just Enough Zod to be Productive
Types of APIs you Must Know - REST, RPC & GraphQL
zhlédnutí 6KPřed rokem
Types of APIs you Must Know - REST, RPC & GraphQL
Automatic SSL Certificates for any Domain with Caddy
zhlédnutí 8KPřed rokem
Automatic SSL Certificates for any Domain with Caddy
JavaScript Values Vs References
zhlédnutí 1,8KPřed rokem
JavaScript Values Vs References
Event-driven Microservices with Node.js, Kafka & Conduktor
zhlédnutí 15KPřed rokem
Event-driven Microservices with Node.js, Kafka & Conduktor
Build a Twitter Clone with the T3 Stack - tRPC, Next.js, Prisma, Tailwind & Zod
zhlédnutí 25KPřed rokem
Build a Twitter Clone with the T3 Stack - tRPC, Next.js, Prisma, Tailwind & Zod

Komentáře

  • @destocot1729
    @destocot1729 Před 16 hodinami

    Great video 1) still a little confused on the volumes part of the config, but I am still learning docker on the side so maybe i havent gotten to that part yet 2) would love a very introish video to use Prometheus and grafana just enough to like take a rest api and bounce off of it 3) how do you get those awesome completions in your terminal

    • @TomDoesTech
      @TomDoesTech Před 15 hodinami

      @@destocot1729 volumes are just a way to persist data in your containers. So if the container stops or gets deleted, the data will persist. The the auto completions are from a zsh plugin called zsh-autosuggestions

  • @ThiagoVieira91
    @ThiagoVieira91 Před dnem

    I completely up for a video about Prometheus and Grafana 🚀

  • @_ingadi
    @_ingadi Před dnem

    Definitely do a video about Prometheus and Grafana

  • @stevemoretz
    @stevemoretz Před dnem

    Smart move good job

  • @sumitkachare6628
    @sumitkachare6628 Před dnem

    just deploy the app, it best then doing all the setup

  • @wzup23
    @wzup23 Před dnem

    Whoa didn't know that I can use postman like this. I always manually type my input whenever I test O_O. Yes, horrible! Thanks for this dude! Will be checking on your other videos.

  • @ThiagoVieira91
    @ThiagoVieira91 Před 2 dny

    Boom! Here I am Seniority

  • @maribusa
    @maribusa Před 2 dny

    Thank you for the great explanation.

  • @ramiworkstation
    @ramiworkstation Před 3 dny

    Thank you very much for being open about your career path and sharing your story. wishing you all success 🌻

  • @lostinthenarrativve

    can you recommend me some webdev courses please ?

  • @ckhicks
    @ckhicks Před 3 dny

    Thanks mate, this was helpful!

  • @seattleshare905
    @seattleshare905 Před 6 dny

    I got lost in the notation changing to TypeScript and using Axios - I'd like to implement OAuth without extra middleware processing any of the data (I get scared of MiddleWare touching sensitive data, especially if I do an update and something changed that accidentally created a vulnerability in the communication).

    • @TomDoesTech
      @TomDoesTech Před 6 dny

      @@seattleshare905 okay well good luck ever building anything

    • @seattleshare905
      @seattleshare905 Před 6 dny

      Thank you! I have been able to create some things! I think I choose to 'feel' good about reducing the amount of Middleware used in handling sensitive user data. 'i' think it's the right choice 🙂

    • @TomDoesTech
      @TomDoesTech Před 6 dny

      @@seattleshare905 I'm not sure what typescript and axios have to do with middleware

    • @seattleshare905
      @seattleshare905 Před 6 dny

      'i' was disappointed only because I was excited to see someone implement Oauth without passport or Google client being used (thus reducing external dependencies and potential code changes that could cause vulnerabilities) - only to realize I'm not very familiar with converting typescript to pure js, and that Axios is being used to obtain the tokens. This was only 'my' disappointment after hoping to see something that showed what is really happening during the OAuth process. Regardless, thanks for the video it was an excellent starting point.

  • @opentech1252
    @opentech1252 Před 8 dny

    good content

  • @bige2899
    @bige2899 Před 9 dny

    After seeing this , Iam happy that Iam using nestjs it makes my life easy. I have to build a simple restapi using express and man this is a nightmate to write all those docs by hand

  • @Latajacaryba
    @Latajacaryba Před 9 dny

    Hi, I'm really new in web development and I've got one, maybe silly, question; what is vite for here? I get we've got web server (fiber) but why do I need vite then?

  • @paulreilly5987
    @paulreilly5987 Před 10 dny

    yes, products service goes down and you can still have orders 😂 … and whats this “go down” issue? … what junk hardware and o/s is this running on 😂😂

  • @kruczek1986
    @kruczek1986 Před 10 dny

    hi & and i have question :) your case about GetUser... if we do not found user we simply can return an error not found. why you suggest that nil for error for this case is better ??

  • @user-oz3hc6lj2e
    @user-oz3hc6lj2e Před 11 dny

    don't use ts-node, it doesn't support es module. instead use tsx which is lightweight and very easy to use and use helmet js,

  • @okegbemijoshua3342
    @okegbemijoshua3342 Před 11 dny

    hello, how do we access res.local.user.sesssion , since our user model does not have the session field

  • @abhishekbarkade5955
    @abhishekbarkade5955 Před 12 dny

    Love you man! I was facing issue to connect with client from my node app for an whole day, found solution to my issue in few minutes only. Thank you so much 🙇‍♂

  • @saifurrahman2503
    @saifurrahman2503 Před 14 dny

    Thanks 👍

  • @hugodsa89
    @hugodsa89 Před 19 dny

    😂😂😂😂 killed me the intro

  • @hugodsa89
    @hugodsa89 Před 19 dny

    Loving this new change

  • @BlurryBit
    @BlurryBit Před 19 dny

    This was a real turn off. I thank the ts team for fixing it.

  • @Its-InderjeetSinghGill

    Hey, really liked this video. I have one question, What if we need to upload multiple files do we need to create multiple signed urls for that?

    • @TomDoesTech
      @TomDoesTech Před 16 dny

      Yeah, I think you have to make multiple URLs. I haven't done it to be honest so I'm not sure

  • @krupalirao1894
    @krupalirao1894 Před 21 dnem

    Thank you Tom...very helpful 👍

  • @JoeElmasry.
    @JoeElmasry. Před 22 dny

    What about sign up with google?😢

    • @TomDoesTech
      @TomDoesTech Před 22 dny

      @@JoeElmasry. Isn't that what's in this video?

  • @nubunto
    @nubunto Před 22 dny

    I get the idea but it’s code like this that becomes a hot path really quickly. Ideally you should be aiming to touch the database as little as possible. This looks like MongoDB, but in Postgres changing this to a single query with a CTE is the way to go

  • @EvilTim1911
    @EvilTim1911 Před 23 dny

    I think it's useful to mention that this applies to frontend JS as well, it doesn't just apply to Node apps. Otherwise, solid advice

  • @s.hariharanreddy5439
    @s.hariharanreddy5439 Před 23 dny

    What is the need of promise all can't we just remove the first await??

    • @TomDoesTech
      @TomDoesTech Před 23 dny

      @@s.hariharanreddy5439 no, you need to await promises. If you don't await it will return a promise and if it throws, the catch block will never catch it

  • @SR-zi1pw
    @SR-zi1pw Před 23 dny

    Nice but little confusing 😂

    • @TomDoesTech
      @TomDoesTech Před 16 dny

      Try it out, you'll understand quickly

  • @sealone777
    @sealone777 Před 23 dny

    First time hearing zsa being used with react query. Anyway to provide GitHub? I just need the code to understand.

  • @naylord5
    @naylord5 Před 23 dny

    Thank you so much for such a useful video 🔥 Cheers master!

  • @SigmaSixSoftware
    @SigmaSixSoftware Před 23 dny

    The way to fix typescripts problem is to just use JS and to stop using TS

  • @daniel64147
    @daniel64147 Před 24 dny

    How do you do BFF?

    • @TomDoesTech
      @TomDoesTech Před 24 dny

      The bff is just another service

    • @daniel64147
      @daniel64147 Před 24 dny

      @@TomDoesTech how do you communicate them, with gRPC?

  • @Ximaz-
    @Ximaz- Před 24 dny

    I'm really greatful for such tutorial. Before knowing about all taht stuuf, I asked myself : "How cna I test my API efficiently, with the most detailed tests possible and reproductibility ?". I almost started to cre&te tests using bash & curl, and starting my server as a daemon. I knew it was not the solution, so I didn't started yet. Thanks to your video, I know the correct way now.

  • @mayanksharma6927
    @mayanksharma6927 Před 24 dny

    I remember upvoting an issue for this on typescript’s github. It’s funny that we sometimes think we’re making a mistake when in fact it’s the language.

    • @TomDoesTech
      @TomDoesTech Před 24 dny

      Yeah I remember being very confused by it too, I thought I was doing something wrong for ages

  • @shawnweddle3002
    @shawnweddle3002 Před 24 dny

    Finally! I’ve ran into this problem before and essentially had to write my own filter method to satisfy typescript. This makes things as easy as they should be.

  • @SushmithaSathyanarayanan

    Nice video, it would be great if you give give little more explanation in here and there esp usage of mutate, interface, it would be good to follow along for beginners

  • @divyanshudwivedi3756
    @divyanshudwivedi3756 Před 25 dny

    Simple and precise !

  • @shakilhossain1551
    @shakilhossain1551 Před 25 dny

    could you make one more video with this architecture for minimum project

  • @acheraime
    @acheraime Před 25 dny

    Great job explaining this architecture. One crucial piece that I see missing is your observability/ monitoring layer. I’ll add prometheus, grafana to collect app and infrastructure metrics. You can even spice it up a bit with jaeger for traceability. This will equip you with a feedback loop to extend your pipeline to do canary releases later on.

    • @TomDoesTech
      @TomDoesTech Před 25 dny

      Ahh yeah good call. This was the second time I recorded the video and I forgot the observability part. Probably should have written it down instead of doing it off the top of my head.

  • @jaycodes8790
    @jaycodes8790 Před 26 dny

    Tom! Why not ROR ?

  • @yunyang6267
    @yunyang6267 Před 26 dny

    Please make a minimal project using this architecture if you have the time.

  • @wizz0056
    @wizz0056 Před 26 dny

    Some tips based on my experience in a large project (30+ microservices, 70+ devs): DX - In cases where you have many microservices, running them all locally for development would rarely be possible. Devs would need beefy laptops to be able to run all the services, and you would also run into the issue of having different setups (eg. docker-compose) for local development and production (eg. kubernetes), which will get exponentially harder to keep in sync as you introduce more and more services and infrastructure pieces. Best approach for this (but pricy) would be to have on-demand remote environments, ideally running inside of kubernetes (or your platform of choice), in which case you eliminate most of the "works on my machine" problems, by having the devs work on the setup that's closest to production. As a bonus with this approach, you also get the benefit of being able to provide on-demand environments for QA/Compliance teams, or for any other purpose, without much effort, since it uses the same logic. Microservices - Please use kafka/rabbitmq/nats (or alternative tech) for communication between services, as opposed to having direct communication. This adds decoupling to your architecture, and will let each service run at it's own pace. This is especially useful when APIs change (like in the example from the video) so instead of having to now update all services that depend on the one that changed the api, you would only change that one, and the way it communicates with the "message bus".

    • @prosperzegue6735
      @prosperzegue6735 Před 25 dny

      Great explanation 👌🏽. I would like to know if a startup developping a multi-tenant SaaS (around 100k users predicted) should begin with microservices architecture or just start with a multi-layer monolith architecture (frontend, monolith backend, single DB) ?

    • @wizz0056
      @wizz0056 Před 24 dny

      ​@@prosperzegue6735 It really depends on your case. For example, if your team never worked on microservices, choosing to do so from the start will add unnecessary complexity and slow you down. You will inevitably have to go the microservice route with that scale, but starting with the monolithic approach and then slowly breaking apart the monolith into different services is still a valid strategy. You can make this process easier by not tightly coupling your code. This can be specific to the tech/language/framework you choose, but you can still take measures to make moving away from the monolith less painful. On the other hand, if you're confident in your team and have prior experience with microservices, I don't see a reason to start with the monolith except for development velocity (only in case where your team doesn't have experience with the microservice architecture). Just be careful of the premature optimization pitfall, and don't over engineer your setup.

    • @prosperzegue6735
      @prosperzegue6735 Před 24 dny

      @@wizz0056 Thanks so much for your reply. Your answer is perpect 👌🏽.

  • @Euquila
    @Euquila Před 26 dny

    Or you can just deploy LOCALLY if your target audience requires strict data privacy, has unreliable internet connectivity, or needs low-latency access to critical systems, such as in healthcare facilities or remote locations.

  • @cannotthinkofanybetterhandle

    Shouldn't we make bff common for both mobile and web (instead of doing it twice in the next js web app and a separate mobile bff)?

    • @TomDoesTech
      @TomDoesTech Před 27 dny

      No, BFF layers should be for a specific UI, they're 1-1

  • @dashaabushenko8599
    @dashaabushenko8599 Před 27 dny

    very nice to see how a senior dev would approach a project architecture-wise. thank you! very useful 👏🏻👏🏻👏🏻

  • @codedusting
    @codedusting Před 27 dny

    NextJS Layer will be using Pages or App Router? Is there any need for App Router in this architecture?

    • @cannotthinkofanybetterhandle
      @cannotthinkofanybetterhandle Před 27 dny

      Here, there is no need to go for app router. Choose based on the team and their experience.

    • @codedusting
      @codedusting Před 27 dny

      @@cannotthinkofanybetterhandle Thanks

    • @heyjitendra
      @heyjitendra Před 27 dny

      Hey there. If we are using any other backend then do you think we could leverage proper type safety?? Like at that point it just becomes manually typing it out...

    • @TomDoesTech
      @TomDoesTech Před 16 dny

      It doesn't matter