You didnt really explain how you want it to work.
You are talking about web sockets and zzz not being enough with its request based system, so i expect that you want to keep the connection alive for a long time?
In that case i dont know what you are talking about implementing the whole new Web Framework. You have a tardy with secsoc set up as server and listening on it (you can see the examples in secsoc repo). And on new connection just spin up a tardy “task” for it to run on and process the messages (you would have to do that in any language in some way, altho it might be a bit simpler in others).
You would have to write your front end for it, but that is something verry few frameworks do for you. (you can even serve your front end with ZZZ and then from its JS make connection to the secsoc, that i didnt do myself, but it should be possible)
What are you missing here, except for http 3, but for your usecase i would argue its unnecessary and even has some disadvantages. (http is not allways bigger number better protocol, depends what you are transfering)
I am not trying to push you towards using this exact stack, but if you dont like it, you can “import” some C library that does exactly what you want.
If there is something i am missing, please correct me.
Overall it still stands, that using Bun (from zig) might not be the best idea.