For Windows user : npx protoc --plugin=protoc-gen-ts_proto=".\ ode_modules\\.bin\\protoc-gen-ts_proto.cmd" --ts_proto_out=./ --ts_proto_opt=nestJs=true ./proto/auth.proto
I love the lane of content that you post man. I am a huge fan of using nest js and containerization, so your content has been a huge source of inspiration to learn more into things like this
I'm facing issue when I try to run npm run start:dev auth , due to absence of auth.proto inside dist folder, but npm run start:dev is working, yet the dist folder has no .proto file, I even used chatgpt, Claude but I can't fix it .
I couldn't follow again after running the protoc command because it errored out: protoc --plugin=./node_modules/.bin/protoc-gen-ts_proto --ts_proto_out=./ --ts_proto_opt=nestJs=true ./proto/auth.proto proto/auth.proto:28:1: Expected top-level statement (e.g. "message").
Can you please start providing an architecture diagram of what you are trying to code at the beginning of the video, using Excalidraw or something? It will help viewers visualize what is actually being built.
how to deploy the gateway services on google cloud or azure, it must listen to the other service and when deploy, the endpoint communicate with the gateway
Very helpful! I actually managed to finish the tutorial. Now that I'm back messing around my own personal project, I just have a quick question. Is it possible to await response from a microservice? I basically have a loading UI when a task is ongoing ( saving objects to db) and while I want it to load while awaiting the task to finish and get a response from the microservice (to use that response on the page after the loading UI), I also need the event loop to not get blocked in the process. Does microservices solve this? or would there be a better solution for this. Any reply or a direction would be greatly appreciated. Thanks!
Sounds like an optimistic response from UI (manually altering the current data displayed while waiting the response from backend), Backend shouldn’t care about this
How to handle exception properly on the apigateway? like find one user which is already deleted, the response is 500 instead of 404. But the auth app correctly throw NotFoundException
how can I catch errors thrown from the auth service on the API Gateway side? I know I should use exception filters, but I've tried several ways and it still doesn't catch the errors.
protoc --plugin=protoc-gen-ts_proto=./node_modules/.bin/protoc-gen-ts_proto --ts_proto_out=./ --ts_proto_opt=nestJs=true ./proto/sample.proto this command is giving error: --ts_proto_out: protoc-gen-ts_proto: %1 is not a valid Win32 application. can anyone help
somebody have the error "terminate called after throwing an instance of 'std::logic_error' what(): basic_string::_M_construct null not valid" when use the command protoc --plugin=./node_modules/.bin/protoc-gen-ts_proto --ts_proto_out=./ --ts_proto_opt=nestJs=true ./proto/auth.proto ?
Yes, i am also receiving this error. Can someone help us about that? Is there any compatibility issue with the version of protobuffs? I am using ProtoBuff 24.4
This was something that i wanted to request you for our microservices course, you created a video wow. Will you add a small section in our existing microservice course?
Can you please split this into different repos and show how you'd handle the sharing of different proto files between different projects . I think that's where the issue is.
well in that case you'd use something else lol. the point of using nestjs and this setup is that you can have everything in one place. If you're going polyrepo, best of luck not losing your mind.
Hey! Love your video, thanks! I came over one question during development, hope you will answer on it: by following conventions, where Data Transfer Objects can be used in application? Which layers? Or such kind of entities can be accessible through all application's layers? What is the best practice for DTOs?
If you're using macOS and encounter the error 'zsh: command not found: protoc' while attempting to execute the command 'protoc --plugin=protoc-gen-ts_proto=./node_modules/.bin/protoc-gen-ts_proto --ts_proto_out=./ --ts_proto_opt=nestJs=true ./proto/auth.proto', you can resolve it by installing the Protocol Buffers compiler. Simply run 'brew install protobuf' assuming you have HomeBrew installed on your Mac. This will install the necessary compiler and resolve the issue.
Why are you using streams to receive users why would you not use the pagination approach? Imagine if there are thousands of rows in database will u send all of it to consumer?
how do window users solve this issue for protoc compiler $ protoc --plugin=./node_modules/.bin/protoc-gen-ts_proto --ts_proto_out=./--ts_proto_opt=nestjs=true ./proto/adminauth.proto --ts_proto_out: protoc-gen-ts_proto: %1 is not a valid Win32 application.
You will have to use the full path instead. For example: protoc --plugin=protoc-gen-ts_proto="C:\path\to\your\project\folder ode_modules\.bin\protoc-gen-ts_proto.cmd" --ts_proto_out=./ --ts_proto_opt=nestJs=true ./proto/auth.proto
You truly are the Messi of NestJS.. Thanks for sharing your knowledge with us! 🙏
The way you fix and improve the code is amazing, maybe in my next life I'll learn NestJS... like you.
Thank you, bro! I was looking for some examples of using gRPC with streams, and your explanation was great! 💪
For Windows user : npx protoc --plugin=protoc-gen-ts_proto=".\
ode_modules\\.bin\\protoc-gen-ts_proto.cmd" --ts_proto_out=./ --ts_proto_opt=nestJs=true ./proto/auth.proto
Thx
I love the lane of content that you post man. I am a huge fan of using nest js and containerization, so your content has been a huge source of inspiration to learn more into things like this
can't find better than you in Nestjs. thanks for your useful contents ♡♡
nice video, the only video that I learned well about gRPC and nest
OMG, I guess I am in great luck today.. I was about to work on these feature on Monday and this video just popped up on 🔥🔥🔥
I'm facing issue when I try to run npm run start:dev auth , due to absence of auth.proto inside dist folder, but npm run start:dev is working, yet the dist folder has no .proto file, I even used chatgpt, Claude but I can't fix it .
Thanks a lot. I learning microservises with you from udemy and youtube.
I couldn't follow again after running the protoc command because it errored out:
protoc --plugin=./node_modules/.bin/protoc-gen-ts_proto --ts_proto_out=./ --ts_proto_opt=nestJs=true ./proto/auth.proto
proto/auth.proto:28:1: Expected top-level statement (e.g. "message").
Very nice add to existing content in you full course. 🙏🙏🙏
Can you please start providing an architecture diagram of what you are trying to code at the beginning of the video, using Excalidraw or something? It will help viewers visualize what is actually being built.
Sure. Thanks for the suggestion.
how to deploy the gateway services on google cloud or azure, it must listen to the other service and when deploy, the endpoint communicate with the gateway
How to add port number for the auth microservice if we have multiple services are running?
Very helpful! I actually managed to finish the tutorial. Now that I'm back messing around my own personal project, I just have a quick question. Is it possible to await response from a microservice? I basically have a loading UI when a task is ongoing ( saving objects to db) and while I want it to load while awaiting the task to finish and get a response from the microservice (to use that response on the page after the loading UI), I also need the event loop to not get blocked in the process. Does microservices solve this? or would there be a better solution for this. Any reply or a direction would be greatly appreciated. Thanks!
Sounds like an optimistic response from UI (manually altering the current data displayed while waiting the response from backend), Backend shouldn’t care about this
How to handle exception properly on the apigateway? like find one user which is already deleted, the response is 500 instead of 404. But the auth app correctly throw NotFoundException
how can I catch errors thrown from the auth service on the API Gateway side? I know I should use exception filters, but I've tried several ways and it still doesn't catch the errors.
which version number using protoc cli, latest version not find in auth.ts user service controllers
protoc --plugin=protoc-gen-ts_proto=./node_modules/.bin/protoc-gen-ts_proto --ts_proto_out=./ --ts_proto_opt=nestJs=true ./proto/sample.proto
this command is giving error: --ts_proto_out: protoc-gen-ts_proto: %1 is not a valid Win32 application.
can anyone help
if you use windows, just change ./node_modules/.bin to .\
ode_modules\\.bin
HI, thank you for your great video, but why ts-proto generated socialMedia: SocialMedia | undefined even if there is no optional keyword?
Is there a way to define a gRPC port? I want to test it with other client than the same nestjs
Can we let API gateway communicate with the other microservices by gRPC way as well ?
somebody have the error "terminate called after throwing an instance of 'std::logic_error'
what(): basic_string::_M_construct null not valid" when use the command protoc --plugin=./node_modules/.bin/protoc-gen-ts_proto --ts_proto_out=./ --ts_proto_opt=nestJs=true ./proto/auth.proto ?
protoc --plugin=protoc-gen-ts_proto=.
ode_modules\.bin\protoc-gen-ts_proto.cmd --ts_proto_out=./ --ts_proto_opt=nestJs=true ./proto/auth.proto
Yes, i am also receiving this error. Can someone help us about that? Is there any compatibility issue with the version of protobuffs? I am using ProtoBuff 24.4
I am confused about the apigateway part in the microservices. Are we supposed to write users module there? Thanks for the video.
Lord of NestJS for sure right there! Good job, excellent video! +1 sub +1 like
best love it
gracias bro, llegaré lejos con tu ayuda!
What about situation u want to use multiple protofiles
Thank you for this amazing video.
This file contains proto3 optional fields, but --experimental_allow_proto3_optional was not set.
This was something that i wanted to request you for our microservices course, you created a video wow. Will you add a small section in our existing microservice course?
Yes that is next! Thanks for your support.
what theme is you using?
Hi, do you have twitter? how do you learn or follow about all the different tools/packages that you use, for example? keda, artillery etc.
Get my NestJS microservices course at a discount here to dive deeper with gRPC & NestJS in a real project: michaelguay.dev/udemy
does this course discuss nest cqrs in more detail that the two videos you made before?
Brilliant video.
Can you please split this into different repos and show how you'd handle the sharing of different proto files between different projects . I think that's where the issue is.
Totally agreed.
That’s the default multiservices problem. Use cloud storage, or private npm
well in that case you'd use something else lol. the point of using nestjs and this setup is that you can have everything in one place. If you're going polyrepo, best of luck not losing your mind.
@@user-93fekod1o loool
How do I solve this issue: --ts_proto_out: protoc-gen-ts_proto: %1 is not a valid Win32 application.
Try this
protoc --plugin=protoc-gen-ts_proto=.
ode_modules\.bin\protoc-gen-ts_proto.cmd --ts_proto_out=./ --ts_proto_opt=nestJs=true ./proto/auth.proto
@@nguyenthaituan1836 thans, but I had to create my own custom generator for the typescript code
protoc is not available on windows, you might want to do the development on WSL
But yeah, dunno if there’s an existing alternative that does the same thing as protoc
@@jomelortega7902 better still develop your own
Thanks for sharing.
Hey! Love your video, thanks! I came over one question during development, hope you will answer on it: by following conventions, where Data Transfer Objects can be used in application? Which layers? Or such kind of entities can be accessible through all application's layers? What is the best practice for DTOs?
gosh that's alot of manual setting up, is gRPC that new on the market?
Great explanations though, so clear👌
Why ts-proto is not dev dependency?😀
The use of grpc in not applied correctly
If you're using macOS and encounter the error 'zsh: command not found: protoc' while attempting to execute the command 'protoc --plugin=protoc-gen-ts_proto=./node_modules/.bin/protoc-gen-ts_proto --ts_proto_out=./ --ts_proto_opt=nestJs=true ./proto/auth.proto', you can resolve it by installing the Protocol Buffers compiler. Simply run 'brew install protobuf' assuming you have HomeBrew installed on your Mac. This will install the necessary compiler and resolve the issue.
I did this, and now the content of my generated file is totally different from his own. Did you encounter that too?
Why are you using streams to receive users why would you not use the pagination approach? Imagine if there are thousands of rows in database will u send all of it to consumer?
Thank you Sir
Thanks ❤
thank yoooo bro
Why pnpm
It's much faster than npm, especially on warm starts, and it manages the packages better.
i guess it s better to generate types atomically instead manually
please pin the Proto node modules command, thanks for great tutorial
.proto looks like writing a schema for graphql
There is no Angular here. Bait title? Incomplete upload? 🤷🏼
how do window users solve this issue for protoc compiler $ protoc --plugin=./node_modules/.bin/protoc-gen-ts_proto --ts_proto_out=./--ts_proto_opt=nestjs=true ./proto/adminauth.proto
--ts_proto_out: protoc-gen-ts_proto: %1 is not a valid Win32 application.
You will have to use the full path instead. For example:
protoc --plugin=protoc-gen-ts_proto="C:\path\to\your\project\folder
ode_modules\.bin\protoc-gen-ts_proto.cmd" --ts_proto_out=./ --ts_proto_opt=nestJs=true ./proto/auth.proto
It's working in windows machine but not generating the auth.ts file (proto to ts conversion), could you please help me out?