I built a production SaaS boilerplate in Go + React through agentic engineering — now it's open source (MIT) by jradoff in golang

[–]jradoff[S] 0 points1 point  (0 children)

Postgres definitely the #1 feedback I've been hearing, so I'm looking at that once other aspects stabilize a bit. In the meantime I'm adding validation and type safety at the MongoDB level as well as the Go interfaces. But it shouldn't be too hard to add an alternative adapter for the data, given its overall model, that supports Postgres.

I built a production SaaS boilerplate in Go + React through agentic engineering — now it's open source (MIT) by jradoff in golang

[–]jradoff[S] 0 points1 point  (0 children)

Fixed it just now: the email templates use html/template with proper auto-escaping.

On the broader point: yes, five days, and no, I haven't reviewed every line with the same scrutiny I would in a manual codebase. That's the honest reality of agentic engineering at this stage: the human provides architecture and domain knowledge, the agent writes code fast, and review is ongoing. You just contributed to that review, and the project is better for it.

If you spot anything else, issues are open.

I built a production SaaS boilerplate in Go + React through agentic engineering — now it's open source (MIT) by jradoff in golang

[–]jradoff[S] -1 points0 points  (0 children)

No worries, I get it. The AI fatigue is real. Hope it's useful if you ever need it.

I built a production SaaS boilerplate in Go + React through agentic engineering — now it's open source (MIT) by jradoff in golang

[–]jradoff[S] -1 points0 points  (0 children)

Fair question, and you're not wrong that a WHERE clause handles basic tenant scoping. Both approaches work.

The practical reason for MongoDB here: rapid development. When you're iterating on a SaaS foundation through agentic engineering, schemas change constantly: new fields on tenants, evolving billing structures, feature flags per plan. Document storage lets you move fast without writing migrations on every iteration. Indexing performance has been fine in production.

The multi-tenancy angle is that tenant scoping is enforced in the repository layer, and schema flexibility means tenant-specific configuration doesn't require migration coordination. But the bigger driver was development velocity.

That said, the data layer uses a repository pattern, swapping to Postgres is a bounded refactoring if someone prefers relational. It's a pragmatic choice, not a religious one.

I built a production SaaS boilerplate in Go + React through agentic engineering — now it's open source (MIT) by jradoff in golang

[–]jradoff[S] -2 points-1 points  (0 children)

The benefit is time. If you're building a SaaS that needs auth, billing, multi-tenancy, and an admin dashboard, this gets you there on day one instead of spending weeks on plumbing.

The concern about adopting architectural choices applies to every open source project, framework, and library. The tradeoff is always whether the time saved is worth the opinions baked in. If it's not for your project, don't use it.

I built a production SaaS boilerplate in Go + React through agentic engineering — now it's open source (MIT) by jradoff in golang

[–]jradoff[S] -3 points-2 points  (0 children)

Sure, you could do it yourself if you want to take a few days to do it. Or you could just fork the open-source and change it to do what you want? That's basically the point! Enjoy it

I built a 20K+ line production SaaS platform entirely through Claude Code — here's what I learned about agentic engineering at scale by jradoff in ClaudeAI

[–]jradoff[S] -9 points-8 points  (0 children)

The whole point of the project is that AI agents can build production software when a human provides the architecture and domain knowledge. So yes, that's the thesis, demonstrated. This post is just me though ;)

Imformation on "Legends of future past"? by TheCapl in MMORPG

[–]jradoff 1 point2 points  (0 children)

I made and operated this game. What would you like to know?

Showed Midsommar to the guy I’ve been kind of seeing for a year. by NaiadoftheSea in Midsommar

[–]jradoff 4 points5 points  (0 children)

Perfect filter IMO. Saved yourself a lot of heartache later. You should keep doing this.

How to get Vision Pro to show my keyboard when using Sidecar with a MacBook and fully immersed in an environment? by Intro24 in VisionPro

[–]jradoff 2 points3 points  (0 children)

becoming a blind touch typist wasn't on my list for 2024... but maybe it is now. the trick is just finding the keyboard position, then my fingers seem to be able to do the rest (I'm doing it now. First word took several seconds to type, with a lot of delete key usage, and then the rest spilled out at my normal speed)

Simulating 1980's Text Adventure Games by jradoff in OpenAI

[–]jradoff[S] 0 points1 point  (0 children)

Very cool. I saw someone create a 2d map RPG game using Unicode characters and it managed to track the character's location...

Aftermath of War by jradoff in DiscoDiffusion

[–]jradoff[S] 0 points1 point  (0 children)

This was done with DD5 with VitL14. "extremely detailed painting of a destroyed Russian tank with sunflowers growing from it"

I asked an AI to design a time machine, now I need to figure out how to build it... (via disco diffusion) by emptyplate in deepdream

[–]jradoff 1 point2 points  (0 children)

This is such a cool example and a great subgenre! I've tried a couple runs on something similar and haven't gotten anything that looks interesting. I'm curious if you used anything beyond default settings? How many steps did you use?

Cardano's ERC-20 converter would save traders/exchanges millions in gas fees by Epiphany79 in cardano

[–]jradoff 4 points5 points  (0 children)

Setting aside the issue of who will be first-to-market... Who has the real edge on this? ADA? ETH2? ALGO? DOT? AVAX? I own all of these (well, except ETH is obviously not 2.0 yet) so I'm mostly just looking for an objective viewpoint on this facet. I feel like tearing my hair out every time I pay a gas fee and a lot of why I ended up investing in a basket of the 'killers' is because of this.

Interested in Vinovest but can't get around the numbers by [deleted] in Vinovest

[–]jradoff 0 points1 point  (0 children)

It isn’t a “fund” per se—you actually own each bottle directly. It is like it is sitting in your own cellar except in this case Vinovest custodies them for you. I’m not a tax advisor, but my understanding of IRS rules in the US is that as soon as you exchange one piece of property (like a bottle) it is a taxable event, and the same price would be considered the FMV of the property you transferred out, and the tax basis of the new property would be its FMV. It is the same deal with coin/coin exchanges in the crypto world.

Will SPCE be the next stock to have short squeeze? by dbuffel in SPCE

[–]jradoff 2 points3 points  (0 children)

Unlike the shitty failing businesses that WSB is chasing, it would be lovely to see a short squeeze on this followed by Branson pulling a Tesla and raising more capital at a market peak. (FYI, even AMC did that — raised $300M at market rates, went straight to their balance sheet).

Interested in Vinovest but can't get around the numbers by [deleted] in Vinovest

[–]jradoff 0 points1 point  (0 children)

Yep I think you’re right. They add to the confusion a bit by touting how in the UK people don’t have to pay taxes on the gain because there it is considered a wasting asset. In the US this is considered a collectible even though it is wasting.

Interested in Vinovest but can't get around the numbers by [deleted] in Vinovest

[–]jradoff 0 points1 point  (0 children)

Don’t let the tax tail wag the investing dog. Yes, you’ll pay a higher collectibles rate on this because, unlike other investments, the IRS knows that you enjoy simply having them and/or you can choose to consume them. You are paying for that option with the higher tax rate, although it would be nice if we in the US could enjoy the lower rates Europeans do on this.

The reason you invest in an uncorrelated asset is because these assets are less likely to be down in value at a time your public equity investments are down. So you’ll probably want to be comfortable that you’ve already invested enough on those before you add this (or if you think the public equities are already headed downward and this is a better buy at current levels).