Hacker News new | comments | ask | show | jobs | submit login
Show HN: Diamond – Full-stack web-framework in D (github.com)
106 points by bausshf 9 months ago | hide | past | web | favorite | 24 comments

Okay, so I figured I'd give a little back story to the project and feel free to ask anything too!

So the project initially started back in 2016 and I originally just made it as an alternative template engine to the template engine in vibe.d, because I didn't like the style of their "Diet" templates and came from an ASP.NET background, so I wanted to make something that was in the style of razor and then I just kept adding features onto it, until it eventually became a MVC Framework, then I kept missing certain features that I would implement in sites, instead of having generic solutions, so I figured I might as well add them to the framework and that's how Diamond went from just a MVC / Template Framework to a full-stack web-framework.

There's still a lot of work to be done, but it's most definitely usable.

I want to thank everyone who's shown interest in the project as I've spend a lot of time on it and I'm currently the only person working on it and I have nobody backing me with funding or anything, so hosting of the website, development of the framework etc. is all done by me so far!

I think... if you're making a web framework you should at least have a routes-controller-view helloworld example in you README.

Thank you for the input, I will do that as soon as possible.

There has now been added examples on controllers, views and models.

I'm intrigued. I've previously considered D and vibe.d for a web project, but ultimately went with something else.

I'm curious what a project might look like in completion. Are there any examples? The repo is currently empty... https://github.com/DiamondMVC/Examples

The website itself is made with Diamond and the repository can be found here. https://github.com/DiamondMVC/Diamond-website -- I haven't come around to made some examples due to my small amount of time, but eventually I hope I can make a little time to make some good examples.

Seems the website itself isn't loading? http://diamondmvc.org/

Thank you, it should be up and running again

No Postgres support yet? But there's an ORM! I wonder how easy it would be to make the ORM use Postgres instead of MySQL.

Should be pretty straight-forward with https://code.dlang.org/packages/vibe-d-postgresql - If you want you can feel free to open an issue on the github repo, that way I won't forget it and I could come around implementing it asap.

any examples of templates? I hated the templates provided by vibed they are too implicit for my taste

That helps, thanks

I love how fast D websites can be!


It lists "Security (CSRF Protection, Validation, Cryptography, SSL, Network etc.)" as a key feature, but https://diamondmvc.org/ doesn't load...

It's hosted on a small shared vps and I don't have a ssl certificate so there's no https for it. Once I can afford that and a better host it'll exist of course. I have no fundings and everything related to it comes out of my pocket as of now.

LetsEncrypt is easy and free. :)

Why not use letsencrypt?

I'll look into it

Got a 502 error on github, HN effect ?

Seems to work fine for me

Why the hard dependency on MySQL?

Well, it's not a hard dependency. Diamond works fine without MySQL, it only depends on the mysql-native library, but not on MySql itself. It's fairly light-weight, so it has no big impact on the framework itself.

Very nice!

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact