Skip to content

Instantly share code, notes, and snippets.

@Cijin
Last active July 3, 2023 00:38
Show Gist options
  • Save Cijin/8432621a6785412258d3d965388310d3 to your computer and use it in GitHub Desktop.
Save Cijin/8432621a6785412258d3d965388310d3 to your computer and use it in GitHub Desktop.
Go Start: My very first commercial product

Go Start: My very first commercial product

TLDR

For go developers, bootstrappers who want to focus on the core of the product and not get bogged down by setting up everything else around it. Using that initial momentum and motivation to work on the thing that matters. It's a small one time fee, you can re-use this template as many times as you like, for as many projects as you like. I'd like to hear about it, the ugly, the bad and maybe some good. You can find me on twitter here, @cijincherian, and the project on gumroad.

For those with a bit more time :)

This was scary! Procrastination is just fear mixed with an excuse. Constantly telling myself, it needs X, Y & Z to be usable. At the very least. The thing is that there was always more of them, the more I did the more the project needed to be "complete" and "useful". It might very well be true, but I doubt for the same reasons that I think. I don't know what use people will find for it, or find it useful at all. The important thing is to make, talk about it, get feedback, improve or throw away.

The only way I could get myself to complete it, is to use the itch to work on another idea. How? Create a hard rule: "Work on the next project can only be started once this one is talked about & received feedback on". It worked! I have to be working on something, it's what I wake up in the early hours for. It's my Ikigai (sort of).

So am I cured of my fears? Not at all! I've just found a moment where my fear is slacking off a bit :D and I'm trying to make the most of it. My greatest fear around this process is that, someone will buy it. It sounds insane when I write it, but it's true! I'm scared of this project being used by someone. I've decided to do it anyway. The alternative is to not to contribute to anything public, no more projects. That is even more scarier. My hope is that, if I do it enough, it'll get easier.

So, if you are thinking of starting a go project and don't want to start from scratch. Give this template a shot.

You know how you dread doing something and once you've done it, you are like, "oh! This wasn't so bad!" ? I'm hoping this is one of those things, cause it'll help me create more, and share those creations. I'd like to think it's a disservice to myself otherwise.

What's in the template?

  • Database
  • Tests
  • Mocks
  • gRPC
  • Auth

Run a few commands and you can start building your API in minutes.

Tests are setup with mocks for database calls, so you can write tests as you go. There are tests included for the API's that come with the template.

The template uses sqlc for generating methods & types to access the Postgres database. Auth is built in with secure defaults, and is designed to be easily swapped out. Simply implement the token interface using your own token of choice and you are good to go. Tests are setup, including mocks required for the database.

You can find the detailed Readme here.

Support

If you have questions you can reach out to me on Twitter, post purchase you'll be added to the Discord server where I can answer any questions related to the template.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment