
Show HN: Giraffe – Functional ASP.NET Core web framework for F# - dustinmoris
https://github.com/giraffe-fsharp/Giraffe
======
bhauer
Hey Dustin, this is super cool. Incidentally, we _just today_ posted Round 17
[1], so you can update your links (e.g. [2]) when you get a moment.

[1] [https://www.techempower.com/blog/2018/10/30/framework-
benchm...](https://www.techempower.com/blog/2018/10/30/framework-benchmarks-
round-17/)

[2]
[https://www.techempower.com/benchmarks/#section=data-r17&hw=...](https://www.techempower.com/benchmarks/#section=data-r17&hw=ph&test=plaintext&l=hra0hp-1&p=zik0zj-
zik0zj-zijocf-5m9r)

~~~
dustinmoris
Awesome, thank you! The results look really good. Still got plenty of room to
optimise though ;)

------
Multicomp
Giraffe is awesome.

It is _quite_ different than the ASPX web forms or XML web services I cut my
teeth on; to use this framework for a side project, I'm needing to teach
myself both ASP.NET Core and MVC-style development at the same time as
continuing to get comfortable with F# & Giraffe's own syntax.

I may or may not have bitten off more than I can chew, but between the
existing ASP.NET Core docs and the nice documentation in Giraffe (one big file
at the Github repo), I'm not defeated yet.

~~~
dustinmoris
If you have a specific question or something which doesn't make immediate
sense then open an issue and you'll normally receive fairly quickly help!

~~~
Multicomp
Thanks for letting me know! I think I'm currently in the throes of "nothing
makes sense why do I have to do route vs routef when do I do this stuff why is
everything squashed into HttpContext!!!?" dither when I just haven't ramped up
the mental framework to reason about what I'm doing. Hopefully, I'm making
progress towards there, but at this second, any issues I open would be skewed
WAY towards the pedantic/RTM side of things rather than stuff of substance.

But I will totally open an issue if I have something not time-wasting!

------
chusk3
This library is what I do all my new web services development in (or it's
child Saturn). I'm actively working to migrate my legacy codebases to it. It
feels pretty good given the host platform, and is easy to mix and match with
non-giraffe components too.

~~~
Rapzid
It's a shame Saturn appears to have lost momentum. F# could really use a
framework with a story as good as Phoenix to drive community growth.

------
keithnz
would be nice to see a realworld (
[https://github.com/gothinkster/realworld](https://github.com/gothinkster/realworld)
) using this.

~~~
dustinmoris
I'll send a PR ;)

------
rishav_sharan
Is giraffe going to take some implementations from zebra? Zebra was amazingly
fast in techempower benchmarks

~~~
dustinmoris
Yes, Giraffe has already taken some lessons from Zebra with some of the recent
optimisations around the view engine. I think there are some more immediate
gains for routing, but currently the focus is on a great Swagger integration
before dwelling into anything else which requires more work. However, PRs are
always welcome. To be honest some of the best perf improvements all came from
PRs!

------
ftcHn
I've looked at using f# in production but got hung up on the fact there's no
autoformatting support that I'm used to in c#, JavaScript etc.

Maybe I'm being petty and it's not really required but it would make f# are
more compelling option for me if it were available.

------
Nelkins
Big fan of Giraffe. Using it in production right now!

