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
- 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
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!
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.
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
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.
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?
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
@@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.
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.
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.
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 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?
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
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.
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
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
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)
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
@@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
@@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)
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 😂
@@टिरंजननकले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
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"
I hope you enjoy this video!
Comment + like - it means the world!
Man that's so freakin cool. And the CLI actually looks awesome !
@@maxwebstudio Hey thanks so much!
+sub
lets put bubble tea with wish in there too.
finally spring initializr for go
wooo? (i think?)
I thought the same thing 😂
😂😂😂
lack of something. But good to GOOOOOOO
wtf, fo real 😂
its like a treasure finding your channel man
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.
Planning on making any monorepo specific functionality to go-blueprint? Just curious.
Last question, are you all adding a scaffolding option for http.ServeMux? or is that already covered in the Standard Library option?
Cool man, this is a good project for newbies, even if I don't 100% agree with structure!
What would you do differently?
Thank you so much Melkey! This actually is what I need from youtube for days back.
This is cool. Thanks melkey for sharing this incredible tool
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
- 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
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!
We can look into this!
this is genuinely awesome, thanks a lot!
this is really cool, thanks for publishing this tool
No problem
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.
That's so nice ! thanks for this project ❤
Awesome tool.
Extremely helpful
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
Glad you enjoyed the video!
Just what I wanted to know, thanks
Youre welcome!
Thank you so much bro
This is awesome
Okay, you convinced me, you're a GOAT of Go.
Thanks for share 🎉 I'll use it for sure!!!
YAY
Great tool. I think if you can add some base lib also, like logger, service discovery etc
That's a great idea
thanks for the work! Might try later.
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.
Amazing.. this is what I was looking for
Backend project only? How about CLI or a service that consumes a message broker?
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.
Good stuff, well done!
Go-blueprint is exciting! Your video is great! Cool 😁😁😁
Great work!
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?
really nice stuff, ive been using it for a while.
Appreciate it homie!
How do you have your tests in a separate directory? Go gets mad if I import anything in a test file.
This video is amazing now I need a good auth blueprint and it has everything that I need with Vanilla taste
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
@@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.
This is awesome!
Hell yeah!
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.
Yep for sure - but I think multi DB can be left for a more advanced approach
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.
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?
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
@@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?
Nice one milky
Thank you sir!
This is great! I would love to see this using `podman kube play` instead of `docker-compose`
that would be amazing. having a option to choose between those would be the perfect move.
This is awesome. 👏👏
HUrray
I put everything in main.go file
Ah - a main of true culture
based
Excellent strategy for a project with no users. 👏🏻
wow i really like this. much appreciated
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
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.
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
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
this is amazing
Thank you! I hope you enjoy
THANK YOU! 🎉⚡️
Hope you enjoy!
You should try giving nix/Devbox a go. You can replace Docker and Air with something that’s much better.
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
Hey thanks for following :)
I studied a bit of DSA!
This is really helpful. But I have issues making payments on your website
Pretty interesting 🎉
:)
Does this project support Message Queues connection too?
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)
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
The docker-compose is just for people who want to spin up a quick db along their restful api
@@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
I’m gonna start my first golangHTMX project.
Could you add etcd please?
yeah
add auth/sessions optional blueprint
Maybe!
@@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)
not installing on Mac
What is the issue? You can add on github or in discord
You have to add the go/bin directory to path
It's great.
Thank you!
thanks!
I like that it's good project
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 😂
Pain.go away
Damn
Go slowly becoming another Java. Instead of understanding the language , programmer tries to learn framework/library.
That's an incorrect statement
@@MelkeyDev
Right from logging to project structure to database operations, now Go libraries or frameworks are being used.
@@टिरंजननकले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
Go is easy. Much easier than Java
It's more like generated boilerplate, instead of creating frameworks to marry with.
I kissed a girl
whats a girl
you should try Arch
And you liked it?
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"
This is awesome!