blog_my
Mar 01, 2009

This is my weblog software. There are many like it, but this one is mine.

Demo:

Give it a try!

(Well, you're seeing it right now, but the demo is much better)

Some nice features:

  • It doesn't use a database. Everything is stored in files.
  • Nice file upload & management interface. (uses SWFUpload)
  • It uses web.py for clean, fast operation.
  • It uses MochiKit for javascript goodness.
  • The "admin" interface is the regular interface. When you login, "edit" links appear by things that are editable.
  • People can edit their comments later
  • Edits in progress are autosaved every 10 seconds.
  • Javascript is used whenever possible to avoid page reloads when changing state.
  • The javascript does not break search engine indexing. Pages & links look good to googlebot.
  • Items can be saved as drafts, to facilitate work-in-progress
  • wiki-style "pages" are supported (you're reading one now)
  • Markdown is used for formatting. Raw html can be used too. There's no WYSIWYG editor.
  • It's pretty extensible. Different types of "things" (besides the default posts, quotes, books) can be added without changing any existing code.
  • Configuration & customization is simple:
    • 1 config file
    • 1 css file
    • 1 template file
  • Fairly lightweight. About ~1000 lines of python + ~1000 lines of javascript. (though the size increases about 20x when you add MochiKit & web.py & SWFUpload).

Boring details:

Blah blah filesystem, blah blah python

Requirements:

  • Python 2.4 or greater
  • MochiKit, web.py, and a couple other 3rd-party modules. These come bundled with blog_my.

License:

  • Public Domain

Download:

Installation & setup:

  1. Unzip the blog_my_X.X.zip file. You'll get a folder called blog_my_X.X/ You may want to move the contents of this folder up one level (watch out - the .htaccess file may overwrite any already-present one)
  2. Edit the config.py file. Set the options as indicated by the comments next to them.
  3. Edit the .htaccess file. Comment or uncomment the lines as appropriate.
  4. Point your browser at it!
  5. email me if you experience problems.

TODO:

  • Item/page versioning (Is this really needed? I don't need it).
  • Other feature suggestions are welcome.
  • Make a couple basic themes
  • update css file
    • better <h1> elements
    • better <li> bullets
  • Quick syntax help (same page? Pop-out?)
  • Way to make things invisible to public (like for personal notes or rough drafts)
  • Less clunky way to shrink/grow text fields
Comment by Tomas
posted Mar 01, 2009

Hi, do you plan to implement "Way to make things invisible to public (like for personal notes or rough drafts)"? I think this would be a very nice feature for a personal blog.

Comment by LPD
posted Mar 01, 2009

Yes, draft mode is supported. This feature was not previously on the list above.

Comment by Qian
posted Jun 19, 2010

Nice blog software, I consider to change WordPress to this ~

Comment by Brian Malloy
posted Jun 25, 2010

It's a great idea that has few dependencies.