No description
  • C 98.2%
  • Makefile 1.8%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-08-16 17:55:19 -04:00
examples feature: added conditionals + added examples 2026-03-12 18:13:04 -04:00
src fix: harden HTTP request and response parsing 2026-08-16 17:55:19 -04:00
.gitignore fix: added examples to git ignore 2026-03-12 18:12:27 -04:00
beaker.h fix: centralise empty HTTP status responses 2026-08-08 00:37:44 -04:00
LICENSE relicense 2026-02-02 09:40:45 -05:00
Makefile Add macOS build and install support 2026-03-18 06:21:05 -04:00
README.md feat: complete logging overhaul 2026-08-11 03:20:47 -04:00

Beaker

Beaker is a lightweight web framework written in C, designed for building simple and efficient web applications. It currently provides handling HTTP requests, routing, serving static files, rendering HTML templates and managing cookies.

Disclaimer

I request that none of this code, in part or in full, be hosted on GitHub, SourceForge, or any other proprietary platform. This request is made out of respect for both me, the developer and for you, the user.

Usage

Look at the files in examples for usage

Installation

  $ git clone https://git.bwaaa.monster/beaker
  $ cd beaker
  # make install

On macOS the default install prefix is /usr/local/, because /usr/lib is protected by System Integrity Protection. The install step produces libbeaker.dylib and removes any stale libbeaker.so from older installs. You can always override the destination:

$ make install INSTALL_PREFIX=/some/prefix/

Roadmap

  • Write documentation
  • Write more examples

Contribution

Generate a patch with git format-patch HEAD~1 and email to gabriel@bwaaa.monster, beginning the subject line with [PATCH beaker]

If you are sending a revised version of a previous patch, please use [PATCH beaker v2, v3, etc].