Sisk.HttpServer 0.4.0

Prefix Reserved
There is a newer version of this package available.
See the version list below for details.
dotnet add package Sisk.HttpServer --version 0.4.0                
NuGet\Install-Package Sisk.HttpServer -Version 0.4.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Sisk.HttpServer" Version="0.4.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Sisk.HttpServer --version 0.4.0                
#r "nuget: Sisk.HttpServer, 0.4.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Sisk.HttpServer as a Cake Addin
#addin nuget:?package=Sisk.HttpServer&version=0.4.0

// Install Sisk.HttpServer as a Cake Tool
#tool nuget:?package=Sisk.HttpServer&version=0.4.0                

<p align="center"> <img width="100%" height="auto" src="https://i.imgur.com/RCljAQs.png"> </p>

Sisk is a powerful micro-framework for building powerful Restful web APIs. It was written using .NET 6 and Microsoft-HTTPAPI/2.0 as their HTTP Engines. Currently, this micro-framework is suitable for building restful APIs, in a structured and object-oriented way. There is no native support for frontend rendering, templates or database connection. You can extend it as you see fit.

Features

  • Ultra fast response/second average
  • Support to operating system's native WebSocket control
  • Sustainable and maintainable
  • Abstract of usage models
  • Database-agnostic
  • Compatible implementation with *nix, Mac OS and Windows
  • Asynchronous
  • Request handling before callback support
  • Built-in configurable rate limiter
  • Configurable error handling
  • Support to log access logs
  • Easy Cross-Origin Resource Sharing setup
  • Written in C# using the Microsoft-HTTPAPI/2.0 (same as IIS)

Note: this micro-framework only works for HTTP and not HTTPS. To use it over TLS/HTTPS, use a reverse proxy.

Documentation

You can access the Sisk documentation here.

Installation

You can install the latest release from Nuget:

PM> dotnet add package Sisk.HttpServer

And then you can start building your own HTTP api, like this:

using Sisk.Core.Http;
using Sisk.Core.Routing;

internal class Program
{
    static void Main(string[] args)
    {
        Router router = new ();
        router.SetRoute(RouteMethod.Get, "/", (req) =>
        {
            return HttpResponse.CreateOK("Hello, world!");
        });

        HttpServerConfiguration configuration = new () {
            ListeningPort = 5555
        };

        HttpServer server = new HttpServer(router, configuration);

        Console.WriteLine("Sisk is listening on HTTP localhost:{0}", server.ListeningPort);
        server.Start();

        while(true) { }
    }
}
Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (4)

Showing the top 4 NuGet packages that depend on Sisk.HttpServer:

Package Downloads
Sisk.ServiceProvider

This package includes tools for easily porting your Sisk service.

Sisk.IniConfiguration

This package provides an INI configuration parser for the Sisk Framework and other .NET projects.

Sisk.BasicAuth

This package includes an helper for embeding basic authentication in your applications made with Sisk.

Sisk.SslProxy

This package provides an experimental SSL proxy for the Sisk Framework and other .NET projects.

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on Sisk.HttpServer:

Repository Stars
sisk-http/core
Sisk's request and response processor mainframe source code.
Version Downloads Last updated
1.3.0 51 11/13/2024
1.3.0-rc5 69 11/10/2024
1.3.0-rc4 63 11/9/2024
1.3.0-rc2 71 11/5/2024
1.3.0-rc 63 11/5/2024
1.2.0 114 10/29/2024
1.1.1 282 10/17/2024
1.1.0 213 9/22/2024
1.0.4 64 10/17/2024
1.0.3 126 9/13/2024
1.0.2 144 9/1/2024
1.0.1 144 8/28/2024
1.0.0 153 8/16/2024
1.0.0-rc8 130 8/13/2024
1.0.0-rc7 85 8/1/2024
1.0.0-rc6 66 7/24/2024
1.0.0-rc4 80 7/10/2024
1.0.0-rc3 69 7/4/2024
1.0.0-rc2 90 6/24/2024
1.0.0-rc1 99 6/7/2024
0.16.2 515 4/28/2024
0.16.2-beta4 105 4/24/2024
0.16.1 170 2/26/2024
0.16.0 1,695 1/9/2024
0.16.0-rc-5 253 1/3/2024
0.16.0-rc-4 125 12/21/2023
0.16.0-rc-3 136 12/7/2023
0.16.0-rc-2 139 11/25/2023
0.16.0-rc-1 118 11/13/2023
0.15.3.1 105 2/19/2024
0.15.3 211 11/25/2023
0.15.2 638 10/30/2023
0.15.1 199 9/30/2023
0.15.0.47 226 8/30/2023
0.15.0.47-rc 62 8/25/2023
0.15.0.46-beta 76 8/22/2023
0.15.0.42-beta 157 8/16/2023
0.15.0.6-beta 168 8/9/2023
0.15.0-beta 165 7/20/2023
0.14.0.1 225 7/18/2023
0.14.0 185 7/17/2023
0.13.1.1 191 6/10/2023
0.13.1 193 6/8/2023
0.13.0 205 5/20/2023
0.12.1 178 5/2/2023
0.12.0 197 4/29/2023
0.11.1 191 4/9/2023
0.11.0 247 3/30/2023
0.10.1 237 3/21/2023
0.10.0 226 3/15/2023
0.9.1 265 3/2/2023
0.9.0 251 2/22/2023
0.8.9 253 2/14/2023
0.8.8 272 2/8/2023
0.8.6 301 2/2/2023
0.8.5 288 2/1/2023
0.8.4 308 1/31/2023 0.8.4 is deprecated because it has critical bugs.
0.8.3 303 1/26/2023
0.8.2 337 1/10/2023
0.8.1 316 1/7/2023
0.8.0 321 1/6/2023
0.7.5 296 12/28/2022
0.7.4 327 12/27/2022
0.7.3 304 12/26/2022
0.7.2 321 12/22/2022
0.7.1 311 12/21/2022
0.7.0 328 12/21/2022
0.6.4 299 12/13/2022
0.6.3 322 12/11/2022
0.6.2 331 12/11/2022
0.6.1 303 12/10/2022
0.6.0 316 12/9/2022
0.5.0 360 11/16/2022
0.4.8 374 10/30/2022
0.4.6 388 10/27/2022
0.4.1 408 10/19/2022
0.4.0 396 10/18/2022
0.3.1 422 10/15/2022
0.3.0 431 10/15/2022