Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

Tree [c6f3cc] master /
History



File Date Author Commit
bin 2010-02-08 Hallison Batista Hallison Batista [35bdeb] Several fixes
lib 2010-10-04 Hallison Batista Hallison Batista [1fe0ae] Assignment of configuration values using blocks
test 2010-10-04 Hallison Batista Hallison Batista [155c3a] New tests for configuration
themes 2010-10-04 Hallison Batista Hallison Batista [275a3a] Fixes in template for about page
.gitignore 2010-10-04 Hallison Batista Hallison Batista [08d928] Tag files for tagging versions
.gitmodules 2010-10-07 Hallison Batista Hallison Batista [c6f3cc] Wappit submodule
ABOUT 2009-10-14 Hallison Batista Hallison Batista [398c2f] New features and enhancements for version 0.9.0
CHANGELOG 2009-11-14 Hallison Batista Hallison Batista [bb3700] Improvements in tasks
LICENSE 2009-10-23 Hallison Batista Hallison Batista [9038fe] Several updates in tasks and documentation
README.md 2010-06-30 Hallison Batista Hallison Batista [718340] Improvements in documentation and source code
Rakefile 2010-06-30 Hallison Batista Hallison Batista [718340] Improvements in documentation and source code
postview.gemspec 2010-06-30 Hallison Batista Hallison Batista [718340] Improvements in documentation and source code

Read Me

Postview - A lightweight blog engine

Postview is a simple blog engine (a.k.a. blogware) written in Ruby using
the Sinatra framework and Kramdown parser to renders files written in
Markdown.

Features

  • Easy configuration.
  • Easy synchronization.
  • No database, it's use only text files written in Markdown.
  • Has suport to themes.

Getting started

Install Ruby [Gem package][postview gem] and try.

The Postview depended of the following libraries (Gems):

Install stable gem from RubyForge or [GemCutter.org][].

$ sudo gem install postview

Then, run command for create and setup a new Postview directory structure.

$ postview create path/to/blog

Or run using "--prompt-values":

$ postview create path/to/blog --prompt-values

After setup, run server with command:

$ postview server

In your browser, access http://127.0.0.1:9000/.

How it works

The Postview creates a directory structure like this:

.
|-- config
|-- posts
|   |-- archive
|   `-- drafts
|-- public
|-- themes
|   `-- default
|       |-- images
|       |-- stylesheets
|       `-- templates
|           |-- archive
|           |-- drafts
|           |-- posts
|           `-- tags
`-- tmp

Create new post

New post can be created by using the task post:

$ cd path/to/postview
$ rake post

Following all instructions. Please, set environment variable +EDITOR+
or +VISUAL+ for editing your posts. Other else, run:

$ cd path/to/postview
$ EDITOR=<your-favorite-editor> rake post

The new post will be written in drafts directory. You can pass other
directory.

$ cd path/to/postview
$ rake post[path/to/other/post/directory]

NOTE: New feature for creates new post from blog manager will be added.

Synchronize your posts

Postview use by default FTP method for synchronization. But, is possible make
deploy using Heroku and Git.

FTP

You can synchronize your files using the . For more information about
this task, run rake -D sync.

It's need creates and edit file placed in /your/home/directory/.netrc.
The directory attribute most be setted in settings.yml file.

Example:

# remote host
/remote/path/to/postview
`-- posts
    |-- archive
    `-- drafts
# local host
posts
|-- 20090702-foo_post_article.ruby.sinatra.git.mkd
|-- archive
|   `-- 20080702-foo_post_article.ruby.sinatra.git.mkd
`-- drafts
    `-- 20090703-foo_draft_article.ruby.sinatra.git.mkd

# To synchronize posts
$ rake sync:posts
$ rake sync:posts[remote/path/to/postview/posts]

# To synchronize archive
$ rake sync:archive
$ rake sync:archive[remote/path/to/postview/posts/archive]

# To synchronize drafts
$ rake sync:drafts
$ rake sync:drafts[remote/path/to/postview/posts/drafts]

# To synchronize all
$ rake sync:all

NOTE: Will added new enhancements for this feature.