fukamachi/woo has 1,410 GitHub stars and 101 forks. GitHot measured 0 stars in 24 hours. Last checked 2026-11-06 08:29 UTC. Last push 2026-10-08.
A fast non-blocking HTTP server on top of libev
Measured star growth
- in 24h
- 0
- in 7 days
- Collecting history
- in 15 days
- Collecting history
- in 1 month
- Collecting history
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
OriginalWoo
Woo is a fast non-blocking HTTP server built on top of libev. Although Woo is written in Common Lisp, it aims to be the fastest web server written in any programming language.
Warning
This software is still BETA quality.
How fast?

See benchmark.md for the detail.
Usage
Use clack:clackup or woo:run to start a web server. The first argument is a Lack "app". See Lack's README for instruction on how to build it.
Remember to pass ":debug nil" to turn off the debugger mode on production environments (it's on by default). Otherwise, your server will go down on internal errors.
Start a server
(ql:quickload :woo)
(woo:run
(lambda (env)
(declare (ignore env))
'(200 (:content-type "text/plain") ("Hello, World"))))
Start with Clack
(ql:quickload :clack)
(clack:clackup
(lambda (env)
(declare (ignore env))
'(200 (:content-type "text/plain") ("Hello, World")))
:server :woo
:use-default-middlewares nil)
Cluster
(woo:run
(lambda (env)
(declare (ignore env))
'(200 (:content-type "text/plain") ("Hello, World")))
:worker-num 4)
SSL Support
Use SSL key arguments of woo:run or clack:clackup.
(woo:run app
:ssl-cert-file #P"path/to/cert.pem"
:ssl-key-file #P"path/to/key.pem"
:ssl-key-password "password")
(clack:clackup app
:ssl-cert-file #P"path/to/cert.pem"
:ssl-key-file #P"path/to/key.pem"
:ssl-key-password "password")
To disable the HTTPS support to omit a dependency on CL+SSL, add woo-no-ssl to cl:*features*.
Signal handling
When the master process gets these signals, it kills worker processes and quits afterwards.
- QUIT: graceful shutdown, waits for all requests are finished.
- INT/TERM: shutdown immediately.
Benchmarks
See benchmark.md.
Installation
Requirements
- UNIX (GNU Linux, Mac, *BSD)
- SBCL
- libev
- OpenSSL or LibreSSL (Optional)
- To turn off SSL, add
:woo-no-ssltocl:*features*before loading Woo.
- To turn off SSL, add
Installing via Quicklisp
(ql:quickload :woo)
Docker example
- Dockerfile for Quickdocs's API server.
See Also
Author
- Eitaro Fukamachi ([email protected])
Copyright
Copyright (c) 2014 Eitaro Fukamachi & contributors
License
Licensed under the MIT License.
Explore related projects
codecrafters-io/build-your-own-x
Master programming by recreating your favorite technologies from scratch.
560,376 starspublic-apis/public-apis
A collective list of free APIs
496,669 starsmorluto/rea
Reverse engineer anything with agents, from app behavior down to native binaries.
437,424 starsopenclaw/openclaw
The AI that really does things. Any OS. Any Platform. The lobster way. 🦞
394,054 stars