A short list of graphql relay style backends or libraries

I asked in the graphql discord server channel, what people used to build their graphql relay style backends.
Here I’ll list the responses.

Language: Go
Toolkit: gqlgen with ent and entgql extension

I made a starter package one can clone and adapt. It uses openid-connect for authentication and postgresql as the data storage. It can also use sqlite in-memory for development purposes.
https://github.com/dlukt/graphql-backend-starter


Language: Scala
Toolkit: Caliban


Language: Node.js
Toolkit: Pothos

Another member of the graphql discord server created a starter package with Prisma, Pothos and Better Auth.
https://github.com/nkzw-tech/server-template


Language: Python
Toolkit: Strawberry GraphQL


Language: Elixir/Phoenix
Toolkit: Absinthe


Language: C#/.net
Toolkit: Chillicream


If you know more, please comment and I’ll extend the post

Nach langer Zeit wieder arbeiten

Nach langer Zeit, in der ich meine Mutter pflegen musste und kaum dazu kam mich um mich selber zu kümmern, bin ich endlich wieder am arbeiten.
Um es so wage wie möglich auszudrücken, ich erstelle etwas, mit dem Verkäufer und Käufer zusammen kommen. 😉
Es macht echt unglaublich Spaß zu sehen wie etwas wächst und vorankommt, wenn man Hindernisse überwindet und es dann letztendlich funktioniert, auch wenn es nur 1 kleiner Aspekt von vielen ist.
Ich liebe das und ich arbeite gern daran.

Bei diversen Anstellungsverhältnissen könnte ich das nicht so, denn ich hätte nicht die Wahl des Tech Stacks.
Arbeiten mit Go und React und Relay/GraphQL macht einfach Spaß, kein Bullshit, einfach nur konkret an die Problemlösung.

Sollte es irgendwo einen Job geben, bei dem ich dafür gerechnet bezahlt würde und idealerweise remote arbeiten kann, bitte melden 🙂

How to package your SPA or PWA without a Dockerfile using Go and ko

Writing Dockerfiles is a pain in the ass.
All you want to do is publish your SPA or PWA dist files in a docker container and maybe even push it to a private registry.

Instead of having to write a Dockerfile, pull some base OS, increase the size of the container image, add potential attack surfaces / vulnerabilities coming from those base OS images, you can wrap and embed it in a Go binary.

Install ko

Create a ko-build.sh in the project root

and edit main.go and insert the following

assuming your bundler, e.g. vite, places dist files in your project root’s dist dir (vite default),

If your dist files are in dist/pwa and your index file is at dist/pwa/index.html edit the lines accordingly.

This is effectively what would be in nginx:

Your container exposes port 8080

Build and publish

Since you only need to write this once, you can copy the main.go to every project that requires it and adjust the ko-build.sh script.

Yes, this survives CTRL+F5 reloads. It routes everything through index.html unless it’s a static file that exists on the filesystem.

Banned from entgo, why?

I wanted to create an issue, in github.com/ent/ent the size annotation doesn’t have any effect when used on a MySQL database.

I couldn’t create the issue, “unable to create issue”, and no further information.

So I said that I can’t create an issue in their discord.
Then I wrote, “So I’ve been banned. What for? Being to critical of Atlas?”

Without any response I was banned from the discord as well.

?!?

Because I don’t agree with giving them my schema information when I need to use it in a k8s context?

I don’t know because I never received a reason.

Seriously, I’ve had enough of those emotionally and mentally unstable mini dictators, banning people for personal entertainment or satisfying their inferiority complex.

Absolutely unacceptable behavior banning someone from their discord only for asking what’s wrong.

Ariel Mashraki need his head examined.

Update 21. Jan. 2025:
I created an issue with Atlas where I demanded the ban lifted or my contributions, issues, discussions and comments deleted.
That issue was deleted and I was banned from the Atlas repository.
I’m now going to file copyright and intellectural property violations with Github, also find a lawyer to sue them.

Kleinanzeigen Kreis Göppingen

Die letzten Tage habe ich an einer Kleinanzeigenplatform für den Kreis Göppingen gearbeitet.

Sie wurde mit ent, gqlgen, mysql im Backend und react mit vite und relay, flowbite UI und tailwindcss im Frontend geschrieben. Als Authentifizierung nutzt sie Zitadel als OIDC IDP.

Man kann sie finden unter:
Kleinanzeigen Kreis Göppingen