Demo [blog](https://uoou.gitlab.io/blop_blog/) and [repo for that blog](https://gitlab.com/uoou/blop_blog/tree/master/public) so you can see what's what.
`blop` essentially just converts markdown into HTML in a lightly structured way. Run `blop` in a directory where you want the local copy of your blog to live and then upload/push the resulting HTML to your website.
`blop` uses (very) light templating. The various `*_template.html` files can be constructed in normal HTML. Special HTML comment tags in these files will be replaced with particular content in the HTML output when `blop` is run.
| `<!--post list-->` | The post listing — a list of links to blog posts. You can format this list as you like; see `listing_format` in [Per-Site Settings](#per-site-settings). |
| `<!--author-->` | The name of the post's author. Derived from `default_author` in `site.conf` (see [Per-Site Settings](#per-site-settings)) unless overidden in the [Front Matter](#front-matter). |
| `<!--date-->` | The post's date. This is derived from the markdown file's modification date. Date can be overidden in [Front Matter](#front-matter). |
| `<!--archive list-->` | The post listing for the archive page — a list of links to blog posts. You can format this list as you like; see `listing_format` in [Per-Site Settings](#per-site-settings). See also `max_posts` in [Per-Site Settings](#per-site-settings) |
Individual posts can contain minimal YAML*ish* front matter to override the post title and author name. Put something like the following (including the dashes) at the top of a post's markdown:
| `date` | Overrides the date as derived from the file's modification date. Format can be anything the `date` command would understand as input. YYYY-MM-DD is probably simplest. |
| `listing_format` | The format to use in post listings. `<!--title-->`, `<!--summary-->` (described in [Front Matter](#front-matter)), `<!--author-->` and `<!--date-->` will be replaced with what you'd expect and `<!--title-nospaces-->` equates to the generated html file's basename, to be used in links. |
Date format strings are as per Linux's `date` command. See `man date` or [this handy table](https://www.tutorialkart.com/bash-shell-scripting/bash-date-format-options-examples/#list-of-bash-date-formatting-options).
Each time blop is run it will delete all the html files in the `posts` directory (so don't put any other static content in there, make a separate directory or put it in the root), the `index.html` file, `archive.html` and `rss.xml`. It won't touch anything else.
The examples in [the example repo](https://gitlab.com/uoou/blop_blog/tree/master/public) constitute a very minimal example of a working blog. You can really go nuts with the template files and structure them how you like. You can also add in as many other static HTML files wherever you like (outside of the `posts` directory). `blop`*won't touch* any static content you add to your site.
#### Examples
A couple of example sites using `blop`.
* [My new personal blog](https://friendo.monster/)
* [HexDSL's site](https://hexdsl.co.uk/)
* [HexDSL's pixel art site](https://pixelfridge.club/)