panblog

A minimalist blog system based on Markdown, Pandoc, and YAML.

Pure Nim score 15/100 · last commit 2019-08-20 · 1 stars · tests present · no docs generated

Summary

Latest Version Unknown
License Unknown
CI Status Failing
Stars 1
Forks 0
Open Issues 0
Last Commit 2019-08-20
Downloads 0
Last Indexed 2026-08-05 04:54

Installation

nimble install panblog
choosenim install panblog
git clone https://gitlab.com/dionmoult/panblog

OS Compatibility

Platform Linux macOS Windows FreeBSD OpenBSD NetBSD Android iOS WASM Embedded
panblog - - - - - - -

Source

Repository https://gitlab.com/dionmoult/panblog
Homepage https://gitlab.com/dionmoult/panblog
Registry Source gitlab

README

panblog

Panblog is a minimalist blog system. You write articles in Markdown with metadata in YAML, and Pandoc converts your articles to HTML. The entire system of Panblog is a 73 line Makefile and 14 line lua filter, excluding HTML and Atom feed templates.

Here's a live demo of panblog.

Features

  1. Open-sourced under the MIT license.
  2. No frills. This README is probably as long as the code itself.
  3. Super-duper fast. Your generated blog is static HTML. No server language required.
  4. Plaintext post editing in Markdown.
  5. Supports showing a "Latest 10 posts" or similar on your homepage.
  6. Supports an archived list of all articles.
  7. Supports generation of Atom feeds.
  8. Custom HTML templates for fancy webdesigns with SEO optimisation and metatags.

Installation

Ensure you have Pandoc and yq installed.

  1. git clone https://gitlab.com/dionmoult/panblog.git
  2. make all
  3. Point your webroot at weblog/

Global configuration

  • Modify baseurl=https://yourblog.com/ in Makefile
  • Modify templates/*.html5 to your blog design

Write an article

  1. vim articles/my-new-article/article.md
  2. vim articles/my-new-article/metadata.yaml
  3. make all

A sample article is provided inside articles/ if you get stuck.

More things you can do

$ make articles # Regenerate all article HTML
$ make article name=my-article # Regenerate a single article
$ make archive # Update your article archive page
$ make index # Update your home page with 10 latest posts
$ make feed # Update your Atom feed