NAME
Bootylicious - Lightweight blog engine on Mojo steroids!
DESCRIPTION
Bootylicious is a minimalistic blogging application built on top of Mojolicious::Lite. It is easily extendable with plugins, templates and themes.
Features
* filesystem-based storage
* comments
* tags
* RSS (articles, comments and by tag)
* static pages
* drafts
* archive
* pingbacks
* themes
* multi-parser support (POD, Markdown)
* plugins
* Unicode support
* search
* lightweight
* clean code
* runs everywhere
Setup
$ cpan Bootylicious
$ bootylicious daemon
Server available at http://*:3000.
Configuration
Create default configuration file
$ bootylicious --create-config
Then open bootylicious.conf
and change it to fit your needs. By default bootylicious
uses current directory as working directory. You can change this with BOOTYLICIOUS_HOME
environment variable.
Writing articles
Articles by default go into articles
directory.
Article consists of file information and content with meta data.
File info
20101017-article.pod
or
20101017T14:02:00-article.pod or 20101017T140200-article.pod
Where timestamp tells us when the article was created. Modified time is retrieved automatically from mtime
. Filename is the article's permalink url. Extension is article's format.
Content
Title: My first article
Tags: blog, internet
Welcome!
[cut] Read more
This is my first article. It is in C<pod> format. And I can use all kind of
B<tags>.
Every article should have metadata. Metadata ends with an empty line. If there is a [cut]
tag, article will be splitted into preview
and content
parts. preview
is shown when a) article list is requested, b) rss.
Depending on file format (file extention, remember?) the content is parsed with an appropriate parser. POD format is available by default. Markdown format is available when Text::Markdown is installed. Other formats are available as plugins.
Enabling/disabling comments
Comments can be disabled everywhere by setting comments_enabled
to false
in configuration file:
{
...
"comments_enabled" : false,
...
}
Or comments can be disabled on per article:
Title: Article with no comments allowed
Comments: false
This is an article...
Core plugins
Bootylicious::Plugin::Pingback
Pingbacks as described on http://www.hixie.ch/specs/pingback/pingback.
Bootylicious::Plugin::HttpCache
ETag header settings and checks.
Bootylicious::Plugin::CanonicalUrl
All urls that don't have .html
in their paths are redirected to .html
.
Bootylicious::Plugin::GoogleAnalytics
Google Analytics JavaScript code.
Bootylicious::Plugin::Search
Basic search.