HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
giraffe-fsharp
Giraffe
F#2017–2023
giraffe-fsharp / Giraffe

Giraffe

A native functional ASP.NET Core web framework for F# developers.

12Distinct people
16Mentions
0Explicit recommenders
2.3KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

A native functional ASP.NET Core web framework for F# developers.

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 8–Nov 15 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/15/2026, 4:00:59 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year16 dated mentions

Observed mentions: 2017-07-28 18:18:01 UTC to 2023-08-09 01:19:45 UTC.

02462017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 2 mentions; 1 submissions, 1 comments20172018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 4 mentions; 1 submissions, 3 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments20202021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 6 mentions; 0 submissions, 6 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2023

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC211
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC413
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC202
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC000
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC606
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC101
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC101

What Hacker News says

6 sources
Wrapping ASP.NET Core to be easier and more idiomatic with F# seems to be a common domain. Out of curiosity, did you look at any existing projects? If so, what was lacking from them that made you decide to write WebFrame? Giraffe: https://github.com/giraffe-fsharp/Giraffe Saturn: https://github.com/SaturnFramework/Saturn Falco: https://github.com/pimbrouwers/Falco Wiz: https://github.com/samueleaton/wiz
In Show HN: WebFrame: F# framework for rapid prototyping with ASP.NET Core
You don't have to use asp.net directly in F# - there's been a long-standing library wrapping it in a more functional aesthetic with Giraffe: https://github.com/giraffe-fsharp/Giraffe Not to discourage you or anything - always good to see alternatives. Personally, for FP web programming, the closer to the "your server as a function" ideal the better - so I'd prefer Giraffe in this case, for things like the router being an HttpHandler instead of being a property on the app instance. It's just way more intuitive from an FP standpoint and produces neater, more self-contained code, IMO.
In Show HN: WebFrame: F# framework for rapid prototyping with ASP.NET Core
I was thinking as a conscious strategy that would impact the way all libraries are built. In my example I posted above, there are no dotnet APIs showing. Its all abstracted. Libraries should create new APIs that are just wrappers around the dotnet library. Whereas, if you look at the examples in the Giraffe framework, you need to do a bunch of dotnet boilerplate. https://github.com/giraffe-fsharp/Giraffe#doing-it-manually open System open Microsoft.AspNetCore.Builder open Microsoft.AspNetCore.Hosting open Microsoft.Extensions.Hosting open Microsoft.Extensions.Logging open Microsoft.Extensions.DependencyInjection open Giraffe let webApp = choose [ route "/ping" >=> text "pong" route "/" >=> htmlFile "/pages/index.html" ] type Startup() = member __.ConfigureServices (services : ISe
Read the rest
rviceCollection) = // Register default Giraffe dependencies services.AddGiraffe() |> ignore member __.Configure (app : IApplicationBuilder) (env : IHostEnvironment) (loggerFactory : ILoggerFactory) = // Add Giraffe to the ASP.NET Core pipeline app.UseGiraffe webApp [<EntryPoint>] let main _ = Host.CreateDefaultBuilder() .ConfigureWebHostDefaults( fun webHostBuilder -> webHostBuilder .UseStartup<Startup>() |> ignore) .Build() .Run() 0
In What I wish I knew when learning F#
The equivalent is fable [1]. The major difference I would say, is that you are required to use botnet alongside of node. (dotnet to compile to JS, then node to bundle with wepback or anything else) Also, you can use the same language to build high performance backend with giraffe [2] (better than node). And build performant native application with fabulous [3]. There is an experimental typescript compilation. Which will be great, because it will make using F# less hostile in an environment where the winner takes all. [1] https://fable.io [2] https://github.com/giraffe-fsharp/Giraffe [3] https://fsprojects.github.io/Fabulous
In F# is gaining independence from .NET

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.