Is zig ready for web backend applications?

We want to build UBER like infrastrcture

Is it ok to do it now in zig ?

I love Zig - it’s my new favourite language.

Zig is still changing, and the last release made some big (and really good) changes to the way arguments are deduced with return location semantics. It did break existing code, however.

I think a good thing for you to look into is the changes that are proposed (to see accepted proposals, go to Issues · ziglang/zig · GitHub) and then make a decision based on how much stability vs how much flexibility and change you’re willing to tolerate.

Another good thing to look into are some of the release notes and see what changes took place and how big of an effect they had.

I also recommend looking into the ecosystem at existing projects. Tiger Beetle is a large one GitHub - tigerbeetle/tigerbeetle: The distributed financial transactions database designed for mission critical safety and performance.

It’s still a bit early for webby stuff, but if you’re eager to be an early adopter you can use

It’s a wrapper around a C library and not a pure Zig solution, but it can be used to get started today.

That said, I’ll state once more that it’s still a bit early for webby stuff in Zig.
If you want a polished experience come back in year.

4 Likes

Hello, I made web socket in C++ and also work in nim-lang, all this in connection with an as400 5000 people behind the web AS400 the time was 3 nanoseconds.
I no longer have access to the AS400 being retired. On the other hand, I’m curious and I’ll take the time to see how it works :wink: with moustach.zig and real databases. But, on reading, I see that there is substance and simplicity.

You talk about making requests that are not too heavy. However, it is obvious to me, 40 years ago and more, we practiced the PROOF method, one screen, one program, we only had 28 KB of memory (32 in overlay) and produced entire chains like a interactive billing, response times were under one second, for example.
Being simple and staying simple was the key word, it does not mean easy and requires knowing your language and your environment well to carry out a project.