Lightweight blogging engine with Markdown support.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

3.2 KiB

Go report Docker Hub Pulls Release License

WallBlog - lightweight blogging engine with markdown support.

Features:

  • Page formatting in markdown and html
  • Custom page header and footer (in markdown)
  • Custom CSS style
  • Automatic sitemap generation
  • Custom error pages
  • HTTP and HTTPS

📦Install binary release

UNIX-like systems

Example for Linux amd64. For other OS/arch change the link end.

curl --output /usr/local/bin/wallblog -L https://github.com/lcomrade/wallblog/releases/latest/download/wallblog.linux.amd64
chmod 755 /usr/local/bin/wallblog

Docker container

Read more on the Docker Hub page.

🔨Build from source

Build deps:

  • Git
  • GNU Make
  • Golang
git clone https://github.com/lcomrade/wallblog.git
cd ./wallblog
make

You can find result of build in ./dist/ directory.

Configuration

/etc/wallblog/config.json

To apply the changes in this file, you must restart the program.

Default:

{
	"WebRoot": "/var/lib/wallblog",
	"HTTP": {
		"Enable": true,
		"Port": ":80"
	},
	"HTTPS": {
		"Enable": false,
		"Port": ":443",
		"Cert": "",
		"Key": ""
	},
	"Overwrite": {
		"Host": "",
		"Protocol": ""
	},
	"SiteMap": {
		"Enable": true,
		"URL": "/sitemap.xml",
		"SkipHidden": true
	},
	"Page": {
		"AutoTitle": {
			"Enable": true,
			"Prefix": "",
			"Sufix": ""
		},
		"AddToHead": [],
		"TemplateMode": {
			"EnableForMainPage": true,
			"EnableForPagePart": true
		}
	}
}

/var/lib/wallblog/*

**.md files - normal Markdown with support for HTML tags.

**.htmlp files - only HTML tags are supported. Put there what is usually between <body></body>.

** files - serve according to their MIME type.

Pages and files

  • **/index.htmlp or **/index.md - works like index.html

Custom page design

  • ./article_start.htmlp or ./article_start.md - custom beginning of the article
  • ./article_end.htmlp or ./article_end.md - custom end of article
  • ./header.htmlp or ./header.md - page header
  • ./footer.htmlp or ./footer.md - page footer
  • ./style.css - page CSS style
  • ./favicon.ico - site icon

Custom error pages

  • ./error.css - error page CSS style
  • ./403.htmlp or ./403.md
  • ./404.htmlp or ./404.md
  • ./500_permission_denied.htmlp or ./500_permission_denied.md
  • ./500_file_read_timeout.htmlp or ./500_file_read_timeout.md
  • ./500_unknown.htmlp or ./500_unknown.md

📑Documentation