aboutsummaryrefslogtreecommitdiff
path: root/README.md
blob: 025b2aa923c715ea9971aef72677bcce3da2ac6f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# weeb

weeb is a web microframework for GNU Guile built on [FastCGI](FastCGI).
It aims to provide a comprehensive library for building dynamic websites
in Scheme, while being leaner, faster, and more stable than Guile's
`(web server)` module, and integrating well with common web servers like
[Apache](https://en.wikipedia.org/wiki/Apache_HTTP_Server) and
[nginx](https://en.wikipedia.org/wiki/Nginx).

API is subject to change.

## Requirements

- GNU Guile 3.0 or later with `--enable-regex`
- `libfcgi-2.4.1`
- A web server with FCGI proxy support

## Building

There is one small wrapper library for `libfcgi` that needs to be built.
Just run `make`.

## Using

```sh
$ spawn-fcgi -s /tmp/guile-fcgi.sock -- ...
```

Where `...` is however you would invoke Guile to run your program.

### Apache Vhost

```xml
<VirtualHost *:80>
    ServerName mysite.local
    ProxyPassMatch ^/ unix:/tmp/guile-fcgi.sock|fcgi://localhost/
</VirtualHost>

```

© 2015 - 2026 Jakob L. Kreuze