Bitweaver

Bitweaver is an object-oriented web application framework and content management system written in PHP that is distributed as open source software under the LGPL. Originally known as TikiPro and derived from the PHP application known as TikiWiki, Bitweaver has distinguished itself from its predecessor by converting to a highly modular software application. It is focused on scalability, data integrity, and stability and is intended for enterprise or large scale, high traffic websites. Bitweaver powers a number of such high profile websites including onnyturf.com, viovio.com, and voip-info.org.

Technologies
Bitweaver uses the ADOdb database abstraction library and makes sure that all database queries work on the following databases: Due to the large number of databases it supports, it is considered cross-platform. In addition to ADOdb bitweaver uses the well established Smarty template presentation framework, which allows bitweaver to efficiently separate logic from presentation making theming and site design logical and straight forward. The targeted template overriding inherited from TikiWiki makes themeing much easier than traditional fixed HTML designs. This makes it much easier to upgrade and work with the coding philosophy advocating pristine source.
 * PostgreSQL
 * MySQL
 * Oracle
 * Firebird

History
Like many content management systems, Bitweaver originated as a fork of another project, in this case, TikiWiki. In late 2003, Christian Fowler began the process of integrating the open source PhpBB forum software. While successful, this revealed a rift among the TikiWiki community - whether the project should remain as a tightly integrated "Swiss Army Knife" or become a more modular, and extendable application more suited to custom software development. After a fierce, open debate [1], [2] on the Sourceforge mailing lists, the founder of TikiWiki refused to permit the PhpBB code changes in the main source-tree.

At that point, several individuals decided to initiate a new project. Initially called "TikiPro" as a nod to its heritage, the project was ultimately renamed Bitweaver. Founding members include Christian Fowler, Max Kremmel, Stephan Bourg, and Brian Todoroff.

Contents of Bitweaver
Being derived from the feature rich code base of its progenitor, TikiWIki, the primary challenges were to remove the lesser-used software features from TikiWiki. After completely modularizing the code base, the main features (known as packages in Bitweaver) were updated and new capabilities were added. During this process of modularizing and code rewriting, the authors of Bitweaver decided to introduce a centralized content management package called liberty. This means that almost all content is stored in a common location, making new package development very easy and providing a common standard across the entire platform.

This architectural design has made it is possible to work with a set of pristine files (e.g. downloaded and kept up to date using CVS) and drop in custom packages to add any functionality required for a particular point installation. In addition, unused packages can be removed simply by deleting the package directory from the server, thus making Bitweaver as compact or as comprehensive as desired.

Activity
As of August 2006, bitweaver has 59 software developers who have permission to contribute to the project [1] and they have maintained a source code contribution pace of 1 commit every 80 minutes for over a year.[2]

Bitweaver packages
Bitweaver includes a number of packages with varying functionality including:
 * blog
 * wiki
 * photo sharing
 * forums
 * ecommerce
 * file sharing

In addition to the content handling packages, Bitweaver provides site administrators with various "services" which enable you to enhance the way the content is displayed or managed. Some of the more notable ones:
 * various methods of access control
 * categorization
 * ratings

Due to the modular architecture of Bitweaver, the services will extend the functionality of all packages installed.

Criticisms

 * While being well-suited for customization, the high-end features, modularity and object oriented design makes it less friendly to individuals looking for small PHP script they can utilize for a personal website.
 * The use of XHTML 1.0 Strict and a tableless design where possible make advanced styling a daunting task for the CSS novice.
 * In March 2006 it was discovered to have an HTML injection vulnerability by noted security website SecurityFocus.

Release History
ReleaseAl ReleaseZero ReleaseOne
 * April 2, 2004: (as TikiPro) Project Naming, Database Prefixing
 * July 19, 2004: v0.0 (as TikiPro) Code reorganization
 * June 22, 2005: v1.0 First major release with full rearchitecting of all code, and introduction of centralized Liberty CMS
 * November 22, 2006: v1.1 Features + Maintenance - Addition of Pigeonholes Categorization package
 * December 26, 2005: v1.2 Features + Maintenance - Addition of Articles news package
 * January 25, 2006: v1.2.1 Maintenance Release
 * March 23, 2006: v1.3 Features + Maintenance Release - Addition of Newsletters emailing package
 * June 16, 2006: v1.3.1 Maintenance Release
 * June 27, 2007 v2.0 Release Candidate

Reference

 * Bitweaver site
 * Project SourceForge page - contains dsitrbuted binaries and license information