Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/samueleaton/wiz

The F# web framework designed for clarity and speed
https://github.com/samueleaton/wiz

asp-net dotnet fsharp http http-server web-framework webserver wiz

Last synced: 3 months ago
JSON representation

The F# web framework designed for clarity and speed

Awesome Lists containing this project

README

        

![Wiz](assets/wiz-banner.png)



*The F# web framework designed for clarity and speed*

→ [https://wiz.run](https://wiz.run)

```fsharp
open Wiz.Server
open Wiz.Route
open Wiz.Context

let handler ctx =
ctx |> sendText "Hello, World"

genServer()
|> setRoutes [get "/" handler]
|> run
```



## Install

Via the .Net CLI:

```bash
dotnet add package Wiz
```

## Example

Here is a fully functional server with 2 routes:

```fsharp
module Program
open Wiz.Server
open Wiz.Route
open Wiz.Context

///////////////////////////
// define route handlers
///////////////////////////
let handleHome ctx =
ctx
|> sendText "Show me some magic!"

let handleSpell ctx =
ctx
|> sendText "Abra Kadabra Kalamazoo!"

///////////////////////////
// map routes to handlers
///////////////////////////
let routes = [
get "/" handleHome
get "/spell" handleSpell
]

[]
let main args =
genServer()
|> setRoutes routes
|> run
```

## About Wiz

Wiz is the result of attentively designing what an F# HTTP server API should look like, and then building that API.

Wiz's goal is to make it *SO* easy to interface with ASP.NET that its the most developer-friendly HTTP framework in all of .NET. To earn that title, Wiz needs to be well documented, intuitive, easily configurable, and fast as hell.


![Wiz Moon Logo](assets/wiz-icon.png)