blahsay v0.0.18
Blahsay
A flat file Markdown blogging engine from Pixelepsy
About
There's a very specific sort of person who might be interested in Blahsay. This sort of person wants:
- to have a web interface for writing posts
- to write posts in Markdown/HTML (WYSIWYG is for wimps)
- proper Markdown rendering of code snippets (something Tumblr inexplicably doesn't have yet)
- a really simple Handlebars theme to modify
- to easily run multiple blogs on the same machine
- to not have ten thousand posts (they'll all need to fit in memory)
- to use flat files and memory instead of a database
- to be able to audit the entire codebase in under ten minutes
Installation
Assuming you have Node.js and NPM installed:
npm install blahsay -g
Navigate to where you want it to create your blog folder and type the following:
blahsay create
It will ask some basic setup stuff like to input a username and password for accessing the web dashboard. Please keep in mind that the only way to secure the web login is to put it behind HTTPS. Until you do that, you'll want to make sure you don't access it from anywhere but your own secured network.
Usage
If you've already run blahsay create
, all you have to do is enter the directory containing your /blahsay
directory and type:
blahsay
Go to server:port/admin
(like example.com/admin
), enter your username and password, and away you go.
You can change the blog title and description in settings and edit the theme.html
file in your /blahsay
folder. You might also want to replace all the favicons in /static
. If you have any files you want to host directly, put them in /static
and they'll be available at server:port/static/[...]
.
To quit Blahsay, just ctrl + c
.
You can change your username, password, or port by quitting Blahsay and modifying the settings.json
file.
Running multiple blogs on the same machine
Make a new screen session, navigate to a different directory (one that doesn't contain a /blahsay
directory already) and run blahsay create
again. You'll want to specify a unique port when it asks for a port.