The BEST Tool to Structure Golang Projects

  Рет қаралды 39,374

Melkey

Melkey

Күн бұрын

Пікірлер: 120
@MelkeyDev
@MelkeyDev 6 ай бұрын
I hope you enjoy this video! Comment + like - it means the world!
@maxwebstudio
@maxwebstudio 6 ай бұрын
Man that's so freakin cool. And the CLI actually looks awesome !
@MelkeyDev
@MelkeyDev 6 ай бұрын
@@maxwebstudio Hey thanks so much!
@maxamedqadar
@maxamedqadar 5 ай бұрын
+sub
@axMf3qTI
@axMf3qTI 4 ай бұрын
lets put bubble tea with wish in there too.
@sametrise
@sametrise 6 ай бұрын
- Option to select multiple database would be good like i can choose redis and sqlite together to use redis for caching and sqlite for normal db use cases. - Also i would like more options for dbs like valkey and some kind of vector database
@esra_erimez
@esra_erimez 3 ай бұрын
Okay, you convinced me, you're a GOAT of Go.
@parthokr
@parthokr 6 ай бұрын
finally spring initializr for go
@MelkeyDev
@MelkeyDev 6 ай бұрын
wooo? (i think?)
@guglielmobartelloni
@guglielmobartelloni 6 ай бұрын
I thought the same thing 😂
@abedalrawas2656
@abedalrawas2656 6 ай бұрын
😂😂😂
@go_lang_thang
@go_lang_thang 5 ай бұрын
lack of something. But good to GOOOOOOO
@xpynim
@xpynim 5 ай бұрын
wtf, fo real 😂
@HypothesisI
@HypothesisI 6 ай бұрын
Cool man, this is a good project for newbies, even if I don't 100% agree with structure!
@j.e.3212
@j.e.3212 2 ай бұрын
What would you do differently?
@omarcrosby
@omarcrosby 4 ай бұрын
You beat me to it, I was working on my own project scaffolding tool but your's is better. Well done! This will save a ton of time.
@omarcrosby
@omarcrosby 4 ай бұрын
Planning on making any monorepo specific functionality to go-blueprint? Just curious.
@omarcrosby
@omarcrosby 4 ай бұрын
Last question, are you all adding a scaffolding option for http.ServeMux? or is that already covered in the Standard Library option?
@Dom-zy1qy
@Dom-zy1qy 2 ай бұрын
I spent 2-3 days designing the most tryhard, over the top golang monorepo. Only to end up converging to a really simple structure. I used to dislike doing that before I really knew how to program, but it's actually a pretty exercise to do from time to time. I realized structuring a project is sort of similar to defining an interface. But I might end up checking some of these scaffolding type tools out next time I make a project. Seems pretty convenient.
@nantusbredenkamp9227
@nantusbredenkamp9227 5 ай бұрын
Hi @MelkeyDev What a great initiative. One less thing to figure out... It would be great if provision can also be made for a monorepo setup, where a couple of projects need to be accommodated, like say and API, workflow implementations, web apps etc. It is still very useful!
@MelkeyDev
@MelkeyDev 5 ай бұрын
We can look into this!
@CodeCatalyst
@CodeCatalyst 4 ай бұрын
Thank you Ive been struggling with finding a "good" way to structure my project and most of the others structures i found were too complex for me because i am still a beginner with go.However this way is way too simpler and easy to understand
@rodjenihm
@rodjenihm 6 ай бұрын
I put everything in main.go file
@MelkeyDev
@MelkeyDev 6 ай бұрын
Ah - a main of true culture
@ustav_o
@ustav_o 6 ай бұрын
based
@TehKarmalizer
@TehKarmalizer 5 ай бұрын
Excellent strategy for a project with no users. 👏🏻
@thangnguyenvan1807
@thangnguyenvan1807 2 ай бұрын
Thank you so much Melkey! This actually is what I need from youtube for days back.
@earnstein7607
@earnstein7607 6 ай бұрын
This is cool. Thanks melkey for sharing this incredible tool
@betatrix8474
@betatrix8474 7 күн бұрын
That's so nice ! thanks for this project ❤
@jackiechanface
@jackiechanface 6 ай бұрын
this is genuinely awesome, thanks a lot!
@SnowDaemon
@SnowDaemon 6 ай бұрын
Awesome tool. Extremely helpful
@akshaychauhan1988
@akshaychauhan1988 5 ай бұрын
Great tool. I think if you can add some base lib also, like logger, service discovery etc
@MelkeyDev
@MelkeyDev 5 ай бұрын
That's a great idea
@agusaris5031
@agusaris5031 6 ай бұрын
Backend project only? How about CLI or a service that consumes a message broker?
@hermes6910
@hermes6910 6 ай бұрын
You are probably free to PR to add the feature. But yeah, would be awesome to have most classical go usecase and not only backend.
@TheShawn_v
@TheShawn_v 4 ай бұрын
this is really cool, thanks for publishing this tool
@MelkeyDev
@MelkeyDev 4 ай бұрын
No problem
@UmeshSavaliya-kd4yr
@UmeshSavaliya-kd4yr 6 ай бұрын
Just what I wanted to know, thanks
@MelkeyDev
@MelkeyDev 6 ай бұрын
Youre welcome!
@jleatherland
@jleatherland 5 ай бұрын
This is exactly what I was looking for. Thank you! This is one of the hardest things for me to wrap my head around coming from js / dart Gosh darn you're a handsome man without that 'tache
@MelkeyDev
@MelkeyDev 5 ай бұрын
Glad you enjoyed the video!
@AlexandreOliveira369
@AlexandreOliveira369 5 ай бұрын
Excellent initiative, @MelkeyDev. Congratulations! How to install on Mac M1? Could you please share a step-by-step guide or include it in the evolution of the tool?
@bnssoftware3292
@bnssoftware3292 3 ай бұрын
Would also be nice to add ability to add multiple projects with shared libraries for use in a monorepo with separate Dockerfile for each project to build separately with it being GitHub Actions aware.
@brijeshamin
@brijeshamin 6 ай бұрын
Amazing.. this is what I was looking for
@JobinZero
@JobinZero 6 ай бұрын
Amazing CLI tool. Thanks for building this. I’m using the tool to structure a project in production. Although I did had some trouble with DBTX and pgx.pool. Somehow figured things out. Maybe you could also add an option to connect with sqlc as well.
@an-eios7125
@an-eios7125 6 ай бұрын
Thank you so much bro This is awesome
@DrKenzoT
@DrKenzoT 5 ай бұрын
This looks awesome! i'm not that well versed in go yet but. I would also add an option for a grpc server/consumer too. May as an option for the routing or as a whole project type like HTTP/GRPC.
@StefanoBrozzi
@StefanoBrozzi 5 ай бұрын
Nice, I've still to check the code created, but: redis is missing from the webUI and (just like sametrise underlined) more than one single db could be used on the destination project.
@MelkeyDev
@MelkeyDev 5 ай бұрын
Yep for sure - but I think multi DB can be left for a more advanced approach
@thre-c7b
@thre-c7b 8 күн бұрын
The most efficient structure is to keep everything in a root folder and only create new ones when absolutely necessary Then you’ll realize there’s no silver bullet-each project needs its own structure that fits Sure, examples can be useful, even the bad ones
@hugh5356
@hugh5356 5 ай бұрын
You should try giving nix/Devbox a go. You can replace Docker and Air with something that’s much better.
@darkfoxwillie
@darkfoxwillie 6 ай бұрын
thanks for the work! Might try later.
@CLeovison
@CLeovison 6 ай бұрын
Hi Melkey! I was a follower of you for a bit of time and i'm just curious if did you also study dsa? Thank you so much
@MelkeyDev
@MelkeyDev 6 ай бұрын
Hey thanks for following :) I studied a bit of DSA!
@franky1116
@franky1116 6 ай бұрын
Thanks for share 🎉 I'll use it for sure!!!
@MelkeyDev
@MelkeyDev 6 ай бұрын
YAY
@codelinx
@codelinx 6 ай бұрын
wow i really like this. much appreciated
@camperec
@camperec 2 ай бұрын
Hello I have a problem using go-blueprint... I init project with chi + mongo. Run 'make docker-up' (check if mongo is initialized - no problem). But when I try to run 'make run' nothing happens. Not even a single line in terminal output. Any suggestions? Tried to google some similar problems but nothing poped up. I even commented db initialization (thought something wrong can be happening here). Thanks a lot
@stephenreaves3205
@stephenreaves3205 6 ай бұрын
This is great! I would love to see this using `podman kube play` instead of `docker-compose`
@ustav_o
@ustav_o 6 ай бұрын
that would be amazing. having a option to choose between those would be the perfect move.
@cig_in_mouth3786
@cig_in_mouth3786 6 ай бұрын
This video is amazing now I need a good auth blueprint and it has everything that I need with Vanilla taste
@ParanoidxProd
@ParanoidxProd 6 ай бұрын
If you’re interested in a really good book on the subject, Let’s Go (written by the creator of the scs package) which has a great chapter on auth. Makes it really easy to implement yourself and overall the book is amazing
@cig_in_mouth3786
@cig_in_mouth3786 6 ай бұрын
@@ParanoidxProd thanks I will read it soon one more question do you know about more backend and testing like I want to write unit test with my code so if you know some books please recommend me thanks you so much.
@macot79
@macot79 6 ай бұрын
Good stuff, well done!
@xeuxdev
@xeuxdev 4 ай бұрын
Hi, I used this tool (go beginner here) Nothing is running both make run, air, even a build of go and running the main.exe retuns nothing. I dont want to use docker
@omolaoyekayode709
@omolaoyekayode709 5 ай бұрын
Hi and thanks for this tutorial. However, I am having one issue. All changes I made to the .env file are not loaded in the go application. It's still using the original property values that came by default. How can I resolve this please?
@MelkeyDev
@MelkeyDev 5 ай бұрын
Off the top of my head I dont know - but maybe if you post an issue on the github we can look into it deeper for you
@omolaoyekayode709
@omolaoyekayode709 5 ай бұрын
@@MelkeyDev thanks for your response. I have been on this for hours. I tried calling this in main.go: godotenv.Overload() and then the new values were read but after removing this, the issue persist. Is there kind of cache I am not aware of?
@ScottDonald78
@ScottDonald78 6 ай бұрын
Great work!
@ustav_o
@ustav_o 6 ай бұрын
really nice stuff, ive been using it for a while.
@MelkeyDev
@MelkeyDev 6 ай бұрын
Appreciate it homie!
@cig_in_mouth3786
@cig_in_mouth3786 6 ай бұрын
Hello melkey, hope you are doing fine, should I write my backend cms in go? Like a friend suggesting django because it is batteries included so development is faster, I am afraid that can I write secure code? (Imposter syndrome)
@dmitrynizhnikov657
@dmitrynizhnikov657 5 ай бұрын
isn't it better to add features as you need it. for example add docker-compose only when you ready to deploy and smth like that. I thought that minimilizm as you go what separates some kind of js development from go dev
@MelkeyDev
@MelkeyDev 5 ай бұрын
The docker-compose is just for people who want to spin up a quick db along their restful api
@dmitrynizhnikov657
@dmitrynizhnikov657 5 ай бұрын
​@@MelkeyDevwell, it's just that it gives you some stuff that you don't initially need, and either you keep that without using it yet, or you just delete it. So eventually just easier to create everything gradually as you go
@ghandn
@ghandn 6 ай бұрын
This is awesome!
@MelkeyDev
@MelkeyDev 6 ай бұрын
Hell yeah!
@laputafelix
@laputafelix 6 ай бұрын
I’m gonna start my first golangHTMX project.
@sakthi484
@sakthi484 6 ай бұрын
This is awesome. 👏👏
@MelkeyDev
@MelkeyDev 6 ай бұрын
HUrray
@erodotosdemetriou6506
@erodotosdemetriou6506 6 ай бұрын
Does this project support Message Queues connection too?
@qoobes
@qoobes 5 ай бұрын
Nice one milky
@MelkeyDev
@MelkeyDev 5 ай бұрын
Thank you sir!
@vladimirkolosov8836
@vladimirkolosov8836 6 ай бұрын
this is amazing
@MelkeyDev
@MelkeyDev 6 ай бұрын
Thank you! I hope you enjoy
@elwafdy
@elwafdy 6 ай бұрын
THANK YOU! 🎉⚡️
@MelkeyDev
@MelkeyDev 6 ай бұрын
Hope you enjoy!
@AndjelkoNS
@AndjelkoNS 5 ай бұрын
Could you add etcd please?
@MelkeyDev
@MelkeyDev 5 ай бұрын
yeah
@ahs4739
@ahs4739 6 ай бұрын
add auth/sessions optional blueprint
@MelkeyDev
@MelkeyDev 6 ай бұрын
Maybe!
@ahs4739
@ahs4739 6 ай бұрын
@@MelkeyDev a video about doing auth+sessions right (with realistic examples and more or less thorough) would also be very nice! (learning about it now and it is very hard for me to find good resources with full examples and not only superabstracted/-simplified ones)
@nicolaswolyniec1354
@nicolaswolyniec1354 6 ай бұрын
Pretty interesting 🎉
@MelkeyDev
@MelkeyDev 6 ай бұрын
:)
@alirezashayegan8260
@alirezashayegan8260 6 ай бұрын
I like that it's good project
@turkerburak
@turkerburak 6 ай бұрын
thanks!
@j.r.r.tolkien8724
@j.r.r.tolkien8724 6 ай бұрын
It's great.
@MelkeyDev
@MelkeyDev 6 ай бұрын
Thank you!
@jekkillbee9931
@jekkillbee9931 5 ай бұрын
not installing on Mac
@MelkeyDev
@MelkeyDev 5 ай бұрын
What is the issue? You can add on github or in discord
@context.Background
@context.Background 5 ай бұрын
You have to add the go/bin directory to path
@ertugrulghazi334
@ertugrulghazi334 3 ай бұрын
Pain.go away
@nexovec
@nexovec 3 ай бұрын
In a world where a lot of go projects use a completely flat file structure, to me the importance of project structure seems inflated. Which didn't prevent me from using an even more complicated project layout than you 😂
@puneetdhiman5194
@puneetdhiman5194 6 ай бұрын
Damn
@jogurtnaturalny
@jogurtnaturalny 6 ай бұрын
I kissed a girl
@MelkeyDev
@MelkeyDev 6 ай бұрын
whats a girl
@IQof2
@IQof2 6 ай бұрын
you should try Arch
@mikesmarcell15
@mikesmarcell15 6 ай бұрын
And you liked it?
@टिरंजननकले
@टिरंजननकले 5 ай бұрын
Go slowly becoming another Java. Instead of understanding the language , programmer tries to learn framework/library.
@MelkeyDev
@MelkeyDev 5 ай бұрын
That's an incorrect statement
@टिरंजननकले
@टिरंजननकले 5 ай бұрын
@@MelkeyDev Right from logging to project structure to database operations, now Go libraries or frameworks are being used.
@m0r4ag
@m0r4ag 4 ай бұрын
@@टिरंजननकलेyeah, they added loops, functions, variables, Go is just a Java wannabe. Im afraid that they will eventually add the feature of commenting in the code
@knowledgedose1956
@knowledgedose1956 3 ай бұрын
Go is easy. Much easier than Java
@vladislav_artyukhov
@vladislav_artyukhov 3 ай бұрын
It's more like generated boilerplate, instead of creating frameworks to marry with.
@andrzejtymotenko6237
@andrzejtymotenko6237 5 ай бұрын
Useless. Too many bugs. Air has changed repo, checked HTMLx/Templ generates schema without templ directory, "make[1]: templ: No such file or directory make[1]: *** [Makefile:8: build] Error 127"
@MaikkunDev
@MaikkunDev 3 ай бұрын
This is awesome!
This is the BEST Golang Context Package Tutorial
12:18
Melkey
Рет қаралды 14 М.
This Is The BEST Way To Structure Your GO Projects
11:08
Melkey
Рет қаралды 82 М.
Accompanying my daughter to practice dance is so annoying #funny #cute#comedy
00:17
Funny daughter's daily life
Рет қаралды 18 МЛН
When Cucumbers Meet PVC Pipe The Results Are Wild! 🤭
00:44
Crafty Buddy
Рет қаралды 59 МЛН
Кто круче, как думаешь?
00:44
МЯТНАЯ ФАНТА
Рет қаралды 6 МЛН
Use Docker for Your Golang Projects with Live Reloading
6:34
These are the BEST Projects Made With Golang
6:05
Melkey
Рет қаралды 23 М.
Чистая архитектура проекта на Golang
58:22
Олег Козырев
Рет қаралды 48 М.
How To Structure Your Golang (API) Projects!?
20:28
Anthony GG
Рет қаралды 50 М.
THIS is the BEST Way to Write HTTP Services in Golang
13:53
GitHub Copilot Just Destroyed All AI Code Editor Startups
7:04
This is the BEST Way to Build Full-Stack Projects
6:16
Melkey
Рет қаралды 16 М.
What can you build in Golang?!
11:10
Golang Dojo
Рет қаралды 193 М.
Five of my favorite project ideas to learn Go.
11:31
Dreams of Code
Рет қаралды 82 М.
How I Structure New Projects In Golang
21:32
Anthony GG
Рет қаралды 63 М.
Accompanying my daughter to practice dance is so annoying #funny #cute#comedy
00:17
Funny daughter's daily life
Рет қаралды 18 МЛН