2026-01-15 18:23:55 +01:00
2026-01-15 18:23:55 +01:00
2025-12-01 22:28:20 +01:00
2024-11-10 18:56:52 +01:00
2024-11-08 17:30:06 +01:00
2026-01-15 18:21:29 +01:00
2026-01-16 03:32:07 +01:00

cws

A minimal web server. This is a personal project; it is not intended to be a production-ready tool, nor will it ever be. Use it at your own risk.

Requirements

  • meson
  • libcyaml
  • myclib (on my profile)
  • doxygen
    • Optional, just to build the docs. It requires dot.

How to build

$ meson setup build
$ cd build
$ meson compile

And then run cws!

Docs

$ git submodule update --init
$ doxygen

And then open the docs/html/index.html.

Roadmap

Doing

  • Support for virtual hosts

Todo

  • Minimal Templating
  • IPv6 compatible

Performance

This test was performed using goku.

goku command
$ goku -t http://localhost:3030 -c 400 -d 30
Concurrency level 400
Time taken 31 seconds
Total requests  365363
Mean request time 22.665250723253322 ms
Max request time 2067 ms
Min request time 0 ms
95'th percentile: 20 ms
99.9'th percentile: 1078 ms
200 OK 365363
Description
A minimal Web Server (gh mirror)
Readme GPL-3.0 572 KiB
Languages
C 71.6%
HTML 26.5%
Meson 1.9%