About

About coppice, the small program that built this site.

This site is built with coppice, a small program that makes a personal site with essays out of markdown. It is one Go program, with no framework, no Node and no database: markdown goes in, plain HTML comes out, and the result can be served from anywhere. Nobody needs JavaScript to read it.

What it makes

  • A home page with a mathematical animation on top: spinning ASCII shapes, Lissajous figures, cycloids, the Mandelbrot set's boundary, Ford circles, a nautilus and more, each drawn by a small script.
  • Posts with sidenotes and margin notes in the style of Edward Tufte's books, a contents list that follows your reading, highlighted code and mathematics in MathML.
  • A list of writings by year, and an RSS feed with every post in full.
  • Pages like this one, and galleries: tiles in a grid, each opening larger over the page.
  • Colour themes, each with a light and a dark side that follow your system's setting, and fonts from Google Fonts that the site serves itself, so visitors never contact Google.

How it works

A site is a folder of its own, as with Jekyll, and coppice is run in it: go run github.com/spinneydev/coppice@latest -new mysite starts one, and go run github.com/spinneydev/coppice@latest -serve :8000 builds it and shows it, building it again whenever a file is saved. Everything is set in one file, config.toml: the site's name, the links on the home page, the animation, the colours, the fonts and their size. The words live in content/: index.md is the home page, every other file there becomes a page, and posts go in content/posts/. The site is built into public/, ready to upload to any static host, or to build from git on a host such as Cloudflare Pages. The look is built into coppice, and a site changes any part of it with templates and stylesheets of its own; the docs have the rest.

Who makes it

coppice comes from spinney, a small lab that makes small tools. It is free software under the GNU General Public License, version 3 or later: use it, change it and share it.