I'm an experienced dev. New to Go. I can't stand most coding tutorial. I feel like most youtubers make the content seem inaccessible, like you need their help to learn it and there is no better way and then they pass themselves off as experts on it all. I recently discovered your channel while exploring go concepts and you are the exception. You make it very clear where everyone can go to learn materials on their own if they want to branch off from your tutorial. You show the documentation and your process of learning in a way that lets other people learn how to learn rather than rely on you covering exactly what they need. You are not afraid to demonstrate concepts in a way that may make people think you are learning it for the first time and I love that
I like how you are going through all the same setup like you did with your other Go video. Good way for me to remember the steps. I hate tutorials when they want you to watch their 20 setup videos first. Cheers.
This is a very clear yet simple guide, I enjoyed it. It really puts me off when a developer learns the topic of his guide real time. In this video the author is well prepared. Thank you a lot!
Great content, appreciate you putting it out there. As a new’ish developer, it would be really cool to see someone put out how they determine what external packages or dependencies to use. It’s easy for someone like me to find a tutorial video like this, follow along and get _something_ that works. I think there would be value in seeing the behind the scenes, if you will, thought process behind design and determining factors of what goes into building the project. Maybe I’m wrong, but that’s the real magic.
Oh my God i got to say it was my first time that i comment on a video if you are smart this video is yours it was great and i learned to much thank you man ,i really owe you
I never comment on coding videos but the 'creating a CRUD API' video and this one are both godsends, rare to have everything I needed so efficiently packed together, made my life really easy. it also isn't rocket science for us to branch off from the video since everything is done the way it is in the docs. Criminally underrated channel.
That was quick and neat. Didn't manage to get the daemon running for some reason (couldn't install it correctly. my dist just yelled "NO!" without any reason) but just followed it step by step and got some grasp around it. All I need to do now is build a frontend to use it with hah!
Great video! You explain things well therefore I am subscribed and liked the video, although I'd suggest you spent a few more minutes in future videos like this to explain the lines of code, and the functionalities of certain Gin, GORM and JWT features required to achieve the outcome desired. At some point it fells like a bit of pushing through the building process without expanding on core concepts.
Great Tutorial! I understand how difficult it is to make something that looks so smooth and effortless. Thank you! 😃 I find Go attractive, but have never dived in deep. This tutorial makes me want to.
Should the middleware be querying the database for user when we know if the token was valid, the "sub" is our userId. I feel like query DB in middleware would be too much querying the db. Thoughts?
is there a reason why you're not creating the jwt and storing it in a cookie for the signup handler? What are we doing for session management for first time users?
HEy one question about security. You are returning the password as part of response (models.user, see 00:35:35). of course this is an example BUT It could easily happen in a real world situation. What is the best practice to avoid this in go/GORM? Should we move the pass-hash to another table? or there is some specific config to tell fiber/GORM that passwordfield is a sensitive field? or instead of use the find-gorn method we create a query with specific fields?
On your struct exclude it to be exposed like `type User struct { Email string `json:"email"` Password string `json:"-"` .... }` The - will exclude it to be exposed
Hi @codingwithrobby I really like your Go videos. Learned a lot from it. I have a question in this video: 1. You are making authentication using JWT and making a cookie in client. so, my question is, when we use front-end tech, like react or vue, do we need to setup the cookie from the front-end or back-end? if front-end, how will the middleware work? what will be it's code and structure?
I keep getting the error DB declared but not used and I'm not sure why as we are creating the pointer to the DB var in the connect function. Does anyone know why this is happending? var DB *gorm.DB func Connect() { var err error dsn := os.Getenv("DB") DB, err := gorm.Open(mysql.Open(dsn), &gorm.Config{}) if err != nil { panic("Failed to connect to db") } }
good video. I ran into an issue where I couldn't sync the database, after multiple hours of debuging to no avail, I just followed along with the rest of the video since I really just wanted to learn the jwt part.
Great video. But the validation of the JSON you do does not work it just skips it. You can send an empty body and it will just run through so maybe thats a little fix you can do.
Wow this video is actually very helpful but I still don't understand how i can relate this to log in & sign up pages because that is what I am looking for but all the tutorials I am seeing is saying exactly this or doing something related to what you are doing and I'm rather new to programming so I would like to get some help
Hi thanks for this video. It was great and informative. One point of critique though. Wherever your mic is, it makes your keyboard typing sound like an ASMR video and for me, quite distracting. Especially since there is some kind of noise that sounds not normal keyboard like. If the sounds were just the normal thok, thok, thok of a keyboard, I'd almost be ok with it, but your keyboard does some funky noises. 😛🤷♂
It was not working for me too, then I searched for an updated tutorial, using v5, just for this jwt part and everything works perfectly, then I got back to this tutorial. I dont know what was the cause tho.
Greetings Robby, I just started learning golang, previously I used angular as a frontend and laravel as a backend. I am very helped by the videos you made, can you make a tutorial on golang as a backend and nextjs as a frontend? It would be better if it started from JWT Authentication Thank you in advance
I'm an experienced dev. New to Go. I can't stand most coding tutorial. I feel like most youtubers make the content seem inaccessible, like you need their help to learn it and there is no better way and then they pass themselves off as experts on it all. I recently discovered your channel while exploring go concepts and you are the exception. You make it very clear where everyone can go to learn materials on their own if they want to branch off from your tutorial. You show the documentation and your process of learning in a way that lets other people learn how to learn rather than rely on you covering exactly what they need. You are not afraid to demonstrate concepts in a way that may make people think you are learning it for the first time and I love that
aweome. thank you. PS: that typo in SECRET in the ENV was killing me the whole time :))))
😆
I like how you are going through all the same setup like you did with your other Go video. Good way for me to remember the steps. I hate tutorials when they want you to watch their 20 setup videos first. Cheers.
Your videos are awesome! Straight forward and super helpful. Keep it up.
I prefer more straightforward, clean and structured videos like these.. great work man! Just subbed! 👾
This is a very clear yet simple guide, I enjoyed it. It really puts me off when a developer learns the topic of his guide real time. In this video the author is well prepared. Thank you a lot!
Amazing tutorial. Love the way you arrange your files and structure your code. Neat!
Dude, your a life saver. Love how you explain the code clear without any part of the video. Thankyou.
Clear, concise and straightforward. Thanks man!
Great content, appreciate you putting it out there. As a new’ish developer, it would be really cool to see someone put out how they determine what external packages or dependencies to use. It’s easy for someone like me to find a tutorial video like this, follow along and get _something_ that works. I think there would be value in seeing the behind the scenes, if you will, thought process behind design and determining factors of what goes into building the project. Maybe I’m wrong, but that’s the real magic.
Your videos on Go really good and clean. Keep creating more videos on Go!
Oh my God i got to say it was my first time that i comment on a video if you are smart this video is yours it was great and i learned to much thank you man ,i really owe you
your middleware usage is much more clean readable than others imo, thank you
Nice video, really great for an developer starting out with go backend-services! Great you also covered other basic topics next to just JWT!
I never comment on coding videos but the 'creating a CRUD API' video and this one are both godsends, rare to have everything I needed so efficiently packed together, made my life really easy. it also isn't rocket science for us to branch off from the video since everything is done the way it is in the docs. Criminally underrated channel.
That was quick and neat. Didn't manage to get the daemon running for some reason (couldn't install it correctly. my dist just yelled "NO!" without any reason) but just followed it step by step and got some grasp around it. All I need to do now is build a frontend to use it with hah!
absolutely brilliant tutorial. easy to follow and understand. dont usually comment but thank you so much for this!
Really useful this video, I've seen some but this one is the best, no doubt! Congratulations!
Loved the way you are explaining things 🤟 Thankyou
More than excellent simple to understand, good explained every step
Great video! You explain things well therefore I am subscribed and liked the video, although I'd suggest you spent a few more minutes in future videos like this to explain the lines of code, and the functionalities of certain Gin, GORM and JWT features required to achieve the outcome desired. At some point it fells like a bit of pushing through the building process without expanding on core concepts.
Great Tutorial! I understand how difficult it is to make something that looks so smooth and effortless. Thank you! 😃 I find Go attractive, but have never dived in deep. This tutorial makes me want to.
Thank you for the video! It was so helpful for me to find out how to do things in the Go way.
Should the middleware be querying the database for user when we know if the token was valid, the "sub" is our userId. I feel like query DB in middleware would be too much querying the db. Thoughts?
great tutorials man!! a need to more tutorials with this!!
Excellent simple to understand, good explained every step
Very good video with clear explanation! Thank you!
its amazing bro literally tons of information in "1" video.
thank you for this tutorial Robby, i really appreciate this. Simple and easy to understand
you made it look sooo easy. thanks! this saved me hours of googling ..
Awesome video. You are helping a lot. Thanks!
directly to the point. that's really awesome dude. keep it up
is there a reason why you're not creating the jwt and storing it in a cookie for the signup handler? What are we doing for session management for first time users?
What a great content, thank you, Robby!
Could you please share the GitHub repository for this code.
Amazing tutorial , it so simple and easy to understand it thank you so much
Thanks for video, very easy and helpful to understand the basics!
super clear tutorial than the others, thankyou!
Thank you, sir! so clear and easy to understand. Great
Thank you for sharing such a great topic!
this was just brilliant from start to finish !!!
Thanks, just made my first backend system.
Super brilliant video for extreme beginner like me
Just what i was looking for, thank you
So wonderful!!! This video is very helpful
Thank you for the video. It was very useful to me
How did the error go away? I thought the error was because of how he misspelled SECRET in the .env file
HEy one question about security. You are returning the password as part of response (models.user, see 00:35:35). of course this is an example BUT It could easily happen in a real world situation. What is the best practice to avoid this in go/GORM? Should we move the pass-hash to another table? or there is some specific config to tell fiber/GORM that passwordfield is a sensitive field? or instead of use the find-gorn method we create a query with specific fields?
You could just remove the field, before returning the User JSON.
On your struct exclude it to be exposed like `type User struct {
Email string `json:"email"`
Password string `json:"-"`
....
}`
The - will exclude it to be exposed
@@ramadhanngallen9217 Thanks for your tips. I have some trouble about it and then the problem is solved
@@rainfog_mzbYou're welcome
Thanks, practical tutorials are awesome :)
this was so helpful, very quik and ismple
The expiration date for the JWT token doesn't have to checked manually, it auto checks if you set the expiration to claims["exp"].
you are incredible, thank you for everything
Subscribed. Please keep them coming.
I am using apple silicon and compile daemon is not working for me. I can even not install it, it says GOBIN etc
Hi @codingwithrobby I really like your Go videos. Learned a lot from it. I have a question in this video:
1. You are making authentication using JWT and making a cookie in client. so, my question is, when we use front-end tech, like react or vue, do we need to setup the cookie from the front-end or back-end? if front-end, how will the middleware work? what will be it's code and structure?
i didn't get why you checking db in middleware? so what is the point of using jwt then?
Simply Amazing , u made it look so simple, Thanks a ton brother !!
Could you do something on "Go-lang with kafka"
For part 2, it would be great if you can walk us thru how to turn this into a web page (user registration, login).
Thanks man! Learned a lot.
Thank you for the good tutorial!
wonderful tutorial! thanks for your work!
btw what was the gui postgresql client at 17:18 ?
Table plus
Thank you a lot, great content!
Very educational and on point.
SIR YOU ARE THE BEST! ❤
thanks for this tutorial Robby!
it's so good. thank you Robby.
I keep getting the error DB declared but not used and I'm not sure why as we are creating the pointer to the DB var in the connect function. Does anyone know why this is happending?
var DB *gorm.DB
func Connect() {
var err error
dsn := os.Getenv("DB")
DB, err := gorm.Open(mysql.Open(dsn), &gorm.Config{})
if err != nil {
panic("Failed to connect to db")
}
}
Because you used ":=" which created new variables within the scope of that function. Instead just use "="
Thanks for your video
One of the first things that attracted me was the auto import feature
how can i get it in vs code?
Just install the official go extension for vs code. When you install it’ll suggest some other installs, click “install all”.
Practical tutorial very nice
Very clear. Thanks
getting a cors error when trying to fetch it on js.
Thank you it was amazing ❤
you sir are awesome
Very helpful, thanks
good video. I ran into an issue where I couldn't sync the database, after multiple hours of debuging to no avail, I just followed along with the rest of the video since I really just wanted to learn the jwt part.
great sutff robby....thank you
Nice video, thank you!
so helpful to get started
Thanks ❤ please make complete Full stack project with go.😊
thanks for this great video
the best tutorial ever
Great video. But the validation of the JSON you do does not work it just skips it. You can send an empty body and it will just run through so maybe thats a little fix you can do.
thank you, good sir!
great tutorial, can i use that cookie based authentication with templates?
thanks it"s helpful for me.
Wow this video is actually very helpful but I still don't understand how i can relate this to log in & sign up pages because that is what I am looking for but all the tutorials I am seeing is saying exactly this or doing something related to what you are doing and I'm rather new to programming so I would like to get some help
thanks bro, nice project
Hi thanks for this video. It was great and informative.
One point of critique though. Wherever your mic is, it makes your keyboard typing sound like an ASMR video and for me, quite distracting. Especially since there is some kind of noise that sounds not normal keyboard like. If the sounds were just the normal thok, thok, thok of a keyboard, I'd almost be ok with it, but your keyboard does some funky noises. 😛🤷♂
theres no error catching for no claims on the cookie. this doesnt stop it from working but it causes a panic
👍 great!
Amazing tutorial, thanks for share your knowledge
Bro just got a new sub
the last thing (middleware part is not working) v5 in auth
i may search a little but if someone worked with them pls put the code
It was not working for me too, then I searched for an updated tutorial, using v5, just for this jwt part and everything works perfectly, then I got back to this tutorial. I dont know what was the cause tho.
omg thanks for the reply, i thought i did someth wrong@@BrenoAlmeida
Thank you!
awww helpfull thanks bro
Greetings Robby,
I just started learning golang, previously I used angular as a frontend and laravel as a backend.
I am very helped by the videos you made, can you make a tutorial on golang as a backend and nextjs as a frontend?
It would be better if it started from JWT Authentication
Thank you in advance
thanks so much!
great tutorial, simple easy to understand and powerful.
could you also make same with Fiber instead of Gin?
Perfect 👍
please share github repo of this,that would be a great help!!