Configuration
Beemo is configured with a YAML file. The config file has three optional sections: build,
logs, and analytics. All paths are relative to the config file.
The path to the config file must be set in the environment variable BEEMO_CONFIG.
The config file can be structured in a way that avoids repetition — keys shared between sections can be placed at the top level, and each section inherits the top-level value unless it defines its own.
Build
Beemo has three modes for different types of websites:
Pages-only mode
For a simple website with static pages and no blog posts. Only the pages_dir key is required in
the config file:
build:
pages_dir: content/pages
static_dir: static
templates_dir: templates
output_dir: www
Blog-only mode
For a blog with no static pages. Only the posts_dir key is required in the config file:
build:
posts_dir: content/posts
static_dir: static
templates_dir: templates
output_dir: www
Pages + blog mode
For a website with both static pages and blog posts. Both pages_dir and posts_dir keys are
required in the config file. Archives, tag indexes and such are generated automatically:
build:
posts_dir: content/posts
pages_dir: content/pages
static_dir: static
templates_dir: templates
output_dir: www
Optional build keys
blog_root sets the path prefix for blog URLs (default: empty, i.e. posts at
/year/month/slug/):
build:
blog_root: blog # posts served at /blog/year/month/slug/
base_url sets the site’s base URL, made available to templates via site.config.base_url:
build:
base_url: https://mysite.com
Logs
When running the beemo logs command, the config file must have a logs section with the
following keys:
logs:
logs_dir: apache2 # directory of gzipped Apache log files
pattern: "mysite.com-access*" # glob filter for log filenames (default: *.gz)
Analytics
When running the beemo analytics command, the config file must have an analytics section
with the following keys:
analytics:
csv_dir: csv # input directory of CSV files from beemo logs
templates_dir: templates # Chameleon templates directory
output_dir: analytics # output directory for the analytics site
manifest_path: www/manifest.json # path to manifest.json produced by beemo build
base_url: https://mysite.com
title: "" # optional