(define-module (theme) #:use-module (haunt html) #:use-module (haunt site) #:use-module (haunt builder blog) #:export (hwebs-theme flat-page-template)) (define hwebs-theme (theme #:name "hwebs" #:layout (lambda (site title body) `((doctype "html") (html (head (meta (@ (charset "utf-8"))) (meta (@ (name "viewport") (content "width=device-width, initial-scale=1.0"))) (link (@ (rel "stylesheet") (href "style.css"))) (title ,(string-append title " — " (site-title site)))) (body (main (article (h1 ,title) ,body)))))))) (define (flat-page-template site metadata body) ((theme-layout hwebs-theme) site (assq-ref metadata 'title) body))