The Project Submission Request

Below is the project submission request (submitted 2/22/2006):

Bloo (BLOg Objects) is a full-featured implementation of weblog software. It sets itself apart from many other weblog packages by being completely object oriented. In addition, the components ("overlay templates") that control the appearance of the user interface are separate from the components ("overlay commands") that control the retrieval of data from persistent storage. Bloo is based on PHP and MySql, although the MySql hooks are encapsulated and offering different DB implementations would be relatively straightforward.

The intelligent objects that manage the command and template overlays are called SnapOns. Unlike other blog software that gives the developer specific places in the code where extensions can be plugged in, the Bloo software is completely composed of these SnapOns, and therefore new functionality can be created for any aspect of the software; "snapped" in place, if you will, in the form of a new SnapOn. In addition, the previously mentioned overlays can be overlayed (hence the name) farther down in the overlay path to provide a new look and feel. It is even possible (and in the plans) to offer different sets of command overlays, thus allowing a Bloo front-end to be placed atop the database back-end of another blog (for instance, WordPress). This is made possible by the fact that overlays are completely separate from the SnapOns that control them. The PHP code is remarkably free of HTML and SQL statements, by design (it's all in the overlays).

The base class of objects for Bloo is called the Phoo Phramework (also developed by the Bloo developer). This is the largest source file in the project and it contains base session, error, Variable, and SnapOn objects.

The goal of the project is that a large number of Bloo-based blogs will appear in the blogosphere, and that a community of Bloo SnapOn developers will be built that can be continuously enhancing the functionality of Bloo. It is hoped that we can move the blogosphere further away from the more procedural implementations currently in the Open Source domain and toward more object-oriented solutions. The software is currently categorized as "pre-alpha", but Bloo's developer (yours truly) has been running a fully functioning Bloo blog since April of 2005 ( The software at the time of this writing is in version 0.18, and hopefully version 1.0 (the first publicly available release candidate) will be released within the next few weeks.

In its current form Bloo already boasts most of the features of the available Blog packages extant in the Blogosphere, including posts, comments on posts, weblogs pinging, trackbacks, post drafts, blogrolling, quote of the day, searching, categories, gravatar support, cascading themes (cascading themes are a Bloo innovation), theme selector, etc. This software is a labor of love and the intention is to take it to the limit. I hope you will consider this project worthy of hosting on SourceForge. Thank you.