# Web services guidance

**URL:** <https://forums.fsharp.org/t/web-services-guidance/3472>\
**Category:** General\
**Tags:** beginners\
**Created:** [December 14, 2023, 3:42am UTC](https://forums.fsharp.org/t/web-services-guidance/3472 "2023-12-14T03:42:20Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![seantallen](https://yyz2.discourse-cdn.com/flex030/user_avatar/forums.fsharp.org/seantallen/32/1274_2.png) [@seantallen](https://forums.fsharp.org/u/seantallen)\
**Post date:** [December 14, 2023, 3:42am UTC](https://forums.fsharp.org/t/web-services-guidance/3472/1 "2023-12-14T03:42:20Z")

</div>

I am looking at options listed on [Guide - Web Programming | The F# Software Foundation](https://fsharp.org/guides/web/#web-frameworks) and I’d love some guidance.

I will be building some web APIs that won’t have a browser based interface component.  
Everything else about the application except for the Web API will already exist including a command line based interface.

It appears from reading about the frameworks listed that if I only want to be building web services and want basic routing and various HTTP services that I should be using [ASP.Net](http://ASP.Net) as others like Giraffe, Suave, and Falco are more batteries included and geared towards “rich applications”.

Is this a reasonable takeaway? Should I be considering using something other than [ASP.Net](http://ASP.Net) for web services, if so, what and why?

---

<div class="post-metadata">

**Author:** ![ntwilson](https://yyz2.discourse-cdn.com/flex030/user_avatar/forums.fsharp.org/ntwilson/32/984_2.png) [@ntwilson](https://forums.fsharp.org/u/ntwilson)\
**Post date:** [December 14, 2023, 10:06pm UTC](https://forums.fsharp.org/t/web-services-guidance/3472/2 "2023-12-14T22:06:24Z")

</div>

I would personally suggest using an F#-specific framework like Giraffe. I don’t think it adds a bunch of rich features so much as it just makes it more F# friendly, instead of it feeling like you’re trying to build a C# application with F#. Giraffe is going to be a bit more close to the raw HTTP traffic and Saturn is going to add more opinionated abstractions on top of it, so it probably just depends on if you want to use those opinionated abstractions or just work with raw HTTP.

I can’t speak much to Suave and Falco, but I’d still bet that they would provide a better experience than “plain” [ASP.Net](http://ASP.Net) for an F# application.
