The panda package

[Tags: deprecated, gpl, library]

Deprecated in favor of bamboo

Simple Static Blog Engine


[Skip to ReadMe]

Properties

Versions0.0, 0.0.0.1, 0.0.0.2, 0.0.0.3, 0.0.0.4, 0.0.0.4.1, 0.0.0.4.2, 0.0.0.5, 0.0.0.5.1, 2008.9.19, 2008.9.19.1, 2008.9.19.2, 2008.9.20, 2008.9.28, 2008.9.29, 2008.10.11, 2008.10.12, 2008.10.13, 2008.10.14, 2008.10.15, 2008.10.16, 2008.10.17, 2008.10.18, 2008.10.19, 2008.10.21, 2008.10.24, 2008.10.25, 2008.10.26, 2008.10.27, 2008.11.6, 2008.11.7, 2008.12.14, 2008.12.15, 2008.12.16, 2009.1.20, 2009.4.1
Change logchangelog.markdown
Dependenciesbase, cgi, containers (>=0.1.0.0), directory, filepath, haskell98, kibro (>=0.0), mps (>=0.0.0.1), network, old-locale, old-time, parsedate (>=3000.0.0), rss (>=3000.0.1), utf8-string (>=0.3.1), xhtml (>=3000.2.0.0) [details]
LicenseBSD3
AuthorWang, Jinjing
MaintainerWang, Jinjing <nfjinjing@gmail.com>
CategoryWeb
Home pagehttp://github.com/nfjinjing/panda/
UploadedMon Sep 15 11:44:46 UTC 2008 by JinjingWang
DistributionsNixOS:2009.4.1
Downloads4298 total (243 in last 30 days)
Votes
0 []
StatusDocs not available [build log]
All reported builds failed as of 2015-06-06 [all 2 reports]

Modules

Downloads

Maintainers' corner

For package maintainers and hackage trustees

Readme for panda-0.0.0.4.2

Panda static blogging engine

Sample file db structure

db
|---- blog
|     |---- 08-09-01 first post
|     |---- 09-09-02 learn javascript
|
|---- tag
      |---- programming
      |---- funny

Why

Quick Demo

It powers my blog ;)

Note: the demo might run on an experimental branch, so differences from the cabal version could occur.

Status

Panda is in its early stage. I got tired of importing / exporting blogs when switching blogging platforms, I needed a way to not be bounded to any service API, and that's the main design goal for Panda. There's no theming yet (except that you wish to hack the source).

The main benefit is that if I ever wanted to stop using Panda, all my blogs and resources are in manageable states.

Install

install [lighttpd](http://www.lighttpd.net/ )

install panda

cabal install panda

bootstrap

# panda is a kibro project
kibro new myblog
cd myblog

# get a template to start
rm -r db; rm -r public
git clone git://github.com/nfjinjing/panda-template.git db
sh db/scripts/bootstrap.sh

run

kibro start

It should be running on http://127.0.0.1:3000 now.

Since Panda is based on Kibro, it helps to read how Kibro works.

Goodies

Install Ruby / Rake, then rake -T to see a list of helper commands.

Config

Edit db/config/site.txt

blog_title   = My shiny blog
host_name    = yourhost.com
author_email = your_mail@yourhost.com

Restart required. (hint: rake r)

Future

The template db is just a starting point for you to experiment on. However, I would encourage you to keep your own db in your own SCM, that way, you will never lose your data and never have to care about application logic again.

There are many things could be done. Whatever there will be, the key idea is simplest data / folder structure, absolutely no parsing, no xml, no code is data like and stuff :)

Hacking

Another way to get Panda running with source is:

# clone the source
git clone git://github.com/nfjinjing/panda.git myblog
cd myblog

# get a template to start
git clone git://github.com/nfjinjing/panda-template.git db

# manually adjust path information for lighttpd
# edit first 6 lines of app/lighttpd/lighttpd.conf to match your path

# manual staging
ln -s db/public public

# run
kibro start

I'm heavily using the [MPS](http://github.com/nfjinjing/mps/tree/master ) package which introduces things like

reject, join, belongs_to, match, gsub

and so on.