Technical Caveats
Content format
Only .htm files are recognized as content. There is no Markdown
support, no tags, no categories, and no theme system. Posts are written in
plain HTML. This is intentional.
Build requirements
The Makefile hardcodes clang as the compiler of choice. On
macOS, available system libraries may differ —use the included
macos-build.sh wrapper which substitutes the correct framework
flags.
Git requirement
The content/ directory must live inside a Git repository.
Creation and modification dates are read from Git history. A single
style.css is expected to be present in the content directory as
a default style sheet. Using the page include_styles header
users can opt out of it for individual pages. Files that have not been
committed yet show as "DRAFT" with no date.
Git integration is provided by libgit2,
which gets downloaded and compiled as a static library on first build (this
requires CMake and wget).
Hard limits
A few limits are set at compile time in the source:
- File paths capped at 100 characters
- HTML content buffer of 48 KB per page—longer posts will overflow
All three are defined as constants and can be raised by editing the source directly.
Bugs
It should go without saying, but obviously there is a high probablitiy that there are a couple of bugs left. But, at least for the content of this page I could not yet find others.