bootylicious
bootylicious copied to clipboard
LIghtweight blog engine on Mojo steroids!
=head1 NAME
Bootylicious - Lightweight blog engine on Mojo steroids!
=head1 DESCRIPTION
Bootylicious is a minimalistic blogging application built on top of LMojolicious::Lite. It is easily extendable with plugins, templates and themes.
=head2 Features
=over
* 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
=back
=head2 Setup
$ cpan Bootylicious
$ bootylicious daemon
Server available at http://*:3000.
=head2 Configuration
Create default configuration file
$ bootylicious --create-config
Then open C<bootylicious.conf> and change it to fit your
needs. By default C
=head2 Writing articles
Articles by default go into C
Article consists of file information and content with meta data.
=head3 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 C
=head3 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 C<[cut]> tag, article will be splitted into C
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 LText::Markdown is installed. Other formats are available as plugins.
=head2 Enabling/disabling comments
Comments can be disabled everywhere by setting C<comments_enabled> to C
{
...
"comments_enabled" : false,
...
}
Or comments can be disabled on per article:
Title: Article with no comments allowed
Comments: false
This is an article...
=head2 Core plugins
=head3 Bootylicious::Plugin::Pingback
Pingbacks as described on Lhttp://www.hixie.ch/specs/pingback/pingback.
=head3 Bootylicious::Plugin::HttpCache
ETag header settings and checks.
=head3 Bootylicious::Plugin::CanonicalUrl
All urls that don't have C<.html> in their paths are redirected to C<.html>.
=head3 Bootylicious::Plugin::GoogleAnalytics
Google Analytics JavaScript code.
=head3 Bootylicious::Plugin::Search
Basic search.