Skip to content

Winter is coming

Pre-release
Pre-release

Choose a tag to compare

@stratdev3 stratdev3 released this 21 Dec 21:55
· 586 commits to master since this release
b1d3532

State of the Rewrite

A lot of progress since last week : the API is stabilizing (SimpleWServer, HttpSession, HttpRequest, HttpResponse, Router), but I still have to find the best approach for modules. There is a full test suite to prevent regressions and the nightly nuget is usable (you need to enable pre-release).

I archived the current version to a v16 folder and the rewrite is now in master.

Feature / Aspect SimpleW v16 (current) SimpleW v26 (in progress)
NET runtime NET8 NET8 but should consider NET9/NET10 for better perfs and RAM usage under heady load (e.g: NET8 400Mo, NET9 100Mo, NET10 70Mo)
Core architecture ⚠️ (tied to NetCoreServer) ✅ from scratch (custom, simple, clean)
Code readability ⚠️ ✅
Overall design philosophy ⚠️ wrapper ✅ minimal, custom, fast
Long-term maintainability ⚠️ harder ✅ much easier
Performance ✅ (very high) ✅ (very high)
Extensibility ⚠️ (callback, subclass) ✅ (midlleware, module, callback, subclass)
Middleware ❌ ✅
Modules ❌ ✅
Minimal API ✅ ✅
Response Builder ✅(status, contentType, headers, body, cookies) ✅ (status, contentType, headers, body, cookies, compression)
Handler (Expression Tree) ✅ sync ❌async ✅ sync ✅ async
Routing ✅ (minimal, attribute, querystring, regexp, path, wildcard) ✅ (minimal, attribute, querystring, path, wildcard)
Controllers ✅ ✅
SSL / HTTPS ✅ (SslContext) ✅ (SslContext)
WebSocket ✅ ⚠️ WIP
Server-Sent Events (SSE) ✅ 📅 TODO
JWT auth ✅ 📅 TODO
Unix socket ✅ ✅
Static files ✅ ✅
Cross-Origin Resource Sharing (CORS) ✅ ⚠️ WIP
Body parsing (JSON) ✅ ✅
Body parsing (form-urlencoded) ✅ ✅
Body parsing (multipart/form-data) ✅ ✅
WebUser / Identity ✅ 📅 TODO
Custom JSON engine ✅ ✅
HTTP pipelining ❌ ✅
Idle Timeout ❌ ✅
Logging ✅ 📅 TODO
Observability (logs, traces) ✅ 📅 TODO
Documentation ✅ ⚠️ WIP

Documentation

There are two documentation flavors (the switch is in the top right corner) :

Teasing

"SimpleW vs Aspnet", coming soon to your theather 🍿🔥

simplew-vs-aspnet