Web servers in D
bauss via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Sat Sep 2 13:18:17 PDT 2017
On Friday, 25 August 2017 at 05:25:09 UTC, Hasen Judy wrote:
> What libraries are people using to run webservers other than
> vibe.d?
>
> Don't get me wrong I like the async-io aspect of vibe.d but I
> don't like the weird template language and the fact that it
> caters to mongo crowd.
>
> I think for D to a have good web story it needs to appeal to
> serious backend developers, not hipsters who go after fads
> (mongodb is a fad, jade/haml is a fad).
>
> I probably need to combine several libraries, but the features
> I'm looking for are:
>
> - Spawn an HTTP server listening on a port, and routing
> requests to functions/delegates, without hiding the details of
> the http request/response objects (headers, cookies, etc).
>
> - Support for websockets
>
> - Runs delegates in fibers/coroutines
>
> - Basic database connectivity (No "orm" needed; just raw sql).
>
> - When iterating the result set of a sql query, has the ability
> to automatically map each row against a struct, and throw if
> the structure does not match.
>
> - More generally, map any arbitrary object (such as json) to a
> struct. Something like Zewo/Reflection package for swift[0].
>
> [0]: https://github.com/Zewo/Reflection
>
> I feel like Vibe.d satisfies my first 3 requirements, but for
> the rest I will probably have to look for something else.
Here is another template engine that can be used along with vibe.
I actually made it for the same reason you don't wanna use vibe.
Because I didn't like the template language and I was more
familiar with razor templates from ASP.NET
https://github.com/bausshf/Diamond
More information about the Digitalmars-d-learn
mailing list