Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
File-based blog engine
JavaScript Perl
branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
bin
environments
lib
public
t
views
.gitignore
Makefile.PL
README.pod
config.yml.sample

README.pod

Twist

Twist is a minimalistic blogging application built on top of Dancer.

Features

    * filesystem-based storage
    * comments (via Disqus)
    * tags
    * RSS (articles, tags)
    * static pages
    * drafts
    * archive
    * Unicode support

    * lightweight
    * clean code
    * runs everywhere

Famous 5 seconds setup

    $ git clone http://github.com/vti/twist.git
    $ cd twist
    $ plackup bin/app.pl
    Server available at http://*:5000.

Configuration

Copy config.yml.sample to config.yml and change it to fit your needs.

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

Where timestamp tells us when the article was created. Modified time is retrieved automatically from mtime. Filename is the article's permalink url. Extention 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.

Drafts

Drafts are available under /drafts url. Only you know the title, so it is safe to put there your drafts and refresh browser to see how it looks.

Static pages

Just put a pod into pages/ directory. Pages are available under /pages url.

Something went wrong with that request. Please try again.