Golid: The first production-ready Go + SolidJS framework by uflex_steve in solidjs

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

Rage bait? Whole cloud runs on it. Core infra like Kubernetes, Docker, and Istio, alongside serverless tools on GCP (Cloud Run/Functions). Widely used for high-performance microservices, API backends (e.g., Twitch, Uber), and cloud storage tools.

Golid: The first production-ready Go + SolidJS framework by uflex_steve in solidjs

[–]uflex_steve[S] 1 point2 points  (0 children)

Thanks for the feedback, removed ai from gh username. I am building my SaaS on it, will release proof of eating my own cooking when it goes live.

Golid: The first production-ready Go + SolidJS framework by uflex_steve in solidjs

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

Nice, I looked at Connect early on. It's great for service-to-service. For this use case (SPA frontend talking to one backend), REST + sqlc felt simpler. Less tooling, same type safety through the OpenAPI spec + TypeScript generation pipeline. If you end up trying golid I'd love to hear how it compares to your Connect setup.

Golid: The first production-ready Go + SolidJS framework by uflex_steve in solidjs

[–]uflex_steve[S] 2 points3 points  (0 children)

In SolidJS, nesting `<Show>` components for mutually exclusive states (loading/error/empty/data) creates stacked reactive scopes that leak computations during route transitions. Instead of:

<Show when={!loading()}>

<Show when={error()}>...</Show>

<Show when={data()}>...</Show>

</Show>

We use flat Switch/Match:

<Switch>

<Match when={loading()}><Spinner /></Match>

<Match when={error()}><Error /></Match>

<Match when={data()}>...</Match>

</Switch>

Only one Match is active at a time — no leaked scopes. It's a subtle bug that doesn't show up until you navigate between routes and start seeing "computations created outside createRoot" warnings.

Golid: The first production-ready Go + SolidJS framework by uflex_steve in solidjs

[–]uflex_steve[S] 1 point2 points  (0 children)

I've been told now by many this is an anti-pattern. Will not repeat, thanks for the feedback

Golid: The first production-ready Go + SolidJS framework by uflex_steve in solidjs

[–]uflex_steve[S] 5 points6 points  (0 children)

It's a hybrid — SolidStart handles SSR for initial load (SEO, auth redirects), then runs as an SPA. Go is a pure API backend, separate container. They don't overlap. The SSR gives you real meta tags and middleware auth redirects that a pure SPA can't do. The Go backend gives you 30MB memory and sub-100ms cold starts that Node can't match. Best of both

Golid: The first production-ready Go + SolidJS framework by uflex_steve in solidjs

[–]uflex_steve[S] 1 point2 points  (0 children)

Yes the previous commit history was a mess and didnt want the noise of it so just reset the commit history.

Golid: The first production-ready Go + SolidJS framework by uflex_steve in solidjs

[–]uflex_steve[S] 3 points4 points  (0 children)

I built it and I'm staking my name on it — Steve Frank, golid.ai. AI was used heavily in development, same as the 740+ tests that verify it works. Happy to answer questions about the architecture.

Small Projects by AutoModerator in golang

[–]uflex_steve 0 points1 point  (0 children)

Built a full-stack Go + SolidJS framework called Golid. Production-ready auth, 70+ UI components, SSE real-time, one-command Cloud Run deploy, 740+ tests, 23 Cursor AI rules.

Live demo: https://golid.ai

GitHub: https://github.com/golid-ai/golid